【问题标题】:How do i download a image from a URL into a specific folder如何从 URL 下载图像到特定文件夹
【发布时间】:2020-03-08 06:40:11
【问题描述】:
我一直在尝试编写一个函数,它接收 URL 列表并将每个 URL 中的每个图像下载到给定文件夹。我知道我应该使用 urllib 库,但我不确定如何..
函数应该像这样开始:
def download_images(img_urls, dest_dir):
我什至不知道如何开始,只能在网上找到有关如何下载图像但无法下载到特定文件夹的信息。如果有人可以帮助我理解如何执行上述操作,那就太好了。
提前谢谢你:)
【问题讨论】:
-
-
分解问题:弄清楚如何访问 URL,然后弄清楚如何从那里获取图像,然后弄清楚如何将该图像保存到文件夹中。 OpenCV 是一个很好的图片加载和保存模块。
-
-
标签:
python
image
url
download
urllib
【解决方案1】:
试试这个:
import urllib.request
urllib.request.urlretrieve('http://image-url', '/dest/path/file_name.jpg')
【解决方案2】:
你可以使用requests库,例如:
import requests
image_url = 'https://jessehouwing.net/content/images/size/w2000/2018/07/stackoverflow-1.png'
try:
response = requests.get(image_url)
except:
print('Error')
else:
if response.status_code == 200:
with open('stackoverflow-1.png', 'wb') as f:
f.write(response.content)
【解决方案3】:
这是一个简单的解决方案,使用 urllib.request.urlretrieve 从您的 url 列表下载图像 img_urls 和 os.path.basename 以从 url 获取文件名,以便您可以将原始名称保存在您的 @ 987654324@
from urllib.request import urlretrieve
import os
def download_images(img_urls, dest_dir):
for url in img_urls:
urlretrieve(url, dest_dir+os.path.basename(url))