Python 3.x 带请求的递归图像下载
我正在尝试使用Python3.5和请求从openi()下载图像。我使用的rest API如下所示:Python 3.x 带请求的递归图像下载,python-3.x,python-requests,Python 3.x,Python Requests,我正在尝试使用Python3.5和请求从openi()下载图像。我使用的rest API如下所示: resp = requests.get("http://openi.nlm.nih.gov/retrieve.php", params = {"query":"Feulgen", "m": 1, "n": 12}) print(resp.content) 这给了我一个json文件,其中包含关于我想要的图像的文本信息(包括它们的.png文件名),但我真的很想下载图像本身 我是否必须
resp = requests.get("http://openi.nlm.nih.gov/retrieve.php",
params = {"query":"Feulgen", "m": 1, "n": 12})
print(resp.content)
这给了我一个json文件,其中包含关于我想要的图像的文本信息(包括它们的.png文件名),但我真的很想下载图像本身
我是否必须根据JSON中列出的特定url下载每个图像,或者是否有方法对查询中出现的图像进行某种“批量下载”
我已经看到了下载图像的请求,但似乎我需要的是.png或.jpeg或.URL。有人知道不使用单独的图像URL获取图像的方法吗
提前谢谢 是的,只是通过并保存
import requests, pprint
resp = requests.get("http://openi.nlm.nih.gov/retrieve.php",
params = {"query":"Feulgen", "m": 1, "n": 12})
for i in resp.json()['list']:
#pprint.pprint(i)
pprint.pprint(i['imgLarge'])
img = requests.get('http://openi.nlm.nih.gov/'+i['imgLarge'])
if img.status_code == 200:
with open("/tmp/"+img.url.split("/")[-1], 'wb') as f:
f.write(img.content)
是的。您必须为每个URL调用图像下载功能