Python urlretrieve无法下载某些图像
我在使用urlretrieve下载某些图像时遇到问题 我使用此代码段下载图像:Python urlretrieve无法下载某些图像,python,image,python-3.x,Python,Image,Python 3.x,我在使用urlretrieve下载某些图像时遇到问题 我使用此代码段下载图像: urllib.request.urlretrieve('https://www.facebook.com/photo/download/?fbid=166644340383715','image_name.jpg') 与其他图像一样,下载成功,但当我试图打开它时,出现错误:未知文件格式,空的/损坏的文件或找不到文件当我试图通过浏览器下载确切的图像时,不会发生什么情况,只是复制粘贴URLhttps://www.fac
urllib.request.urlretrieve('https://www.facebook.com/photo/download/?fbid=166644340383715','image_name.jpg')
与其他图像一样,下载成功,但当我试图打开它时,出现错误:
未知文件格式,空的/损坏的文件或找不到文件
当我试图通过浏览器下载确切的图像时,不会发生什么情况,只是复制粘贴URLhttps://www.facebook.com/photo/download/?fbid=166644340383715
到地址行,然后按enter键。文件大小也不同:实际文件大小为14.6KB,使用urlretrieve创建的文件大小为48KB。我认为这个问题只与小文件有关,但尝试使用另一个文件可能服务器端的图像已损坏。或者服务器会阻止您的下载。不管怎样,下载这张图片对你来说都是没有希望的
def download_image(url, filename, output_dir_name):
if not os.path.exists(output_dir_name):
os.makedirs(output_dir_name)
conn = urllib.request.urlopen(url)
output = open(os.path.join(output_dir_name, filename), 'wb') # binary flag needed for Windows
output.write(conn.read())
output.close()