我一直在尝试从网站下载图片(不需要用户名和密码)但每次我都收到一个空文件。我使用了传统的urllib .retrieve并请求方法,但获得了相同的结果。更重要的是,如果我尝试通过15-20分钟后复制粘贴URL手动打开相同的图像,那么该图像本身不会打开。我假设在这种情况下需要某种会话处理。下面是我的代码,它返回空图像。
import os
import urllib
def savePic(url):
uri="C:\Python27\Scripts\Photosurl2.jpg"
if url!="":
urllib.urlretrieve(url, uri)
savePic("http://www-nass.nhtsa.dot.gov/nass/cds/GetBinary.aspx?ImageView&ImageID=491410290&Desc=Lookback+from+final+rest&Title=Scene+Photos+-+image1&Version=1&Extend=jpg")
感谢任何帮助。
答案 0 :(得分:0)
当您尝试在Python中实现某些HTTP代码时,请不要忘记验证您是否可以使用curl
或wget
来执行这些HTTP请求。这将为您节省大量时间来尝试调试代码中没有的问题。
它也有非常好的详细模式,可以给你一些关于你缺少什么的提示。
此外,大多数高级Python开发人员使用requests
库而不是urllib库。
PS。请求库比urllib更容易使用。