我使用脚本从网站下载图片,直到最近它一直运行良好。值得注意的是,页面是https,但是根据不应该成为问题的urllib文档。它首先请求页面并使用正则表达式从页面中提取下载链接。从那里脚本进入循环以下载文件,内部循环如下所示:
dllink = m[0].replace('\">Download','')
print dllink
#m = re.findall('[a-f0-9]+.[\w]+',dllink)
extension = re.findall('.[\w]+$',dllink)[0]
fname = post_id + extension
urllib.urlretrieve(dllink,cpath + "/" + fname)
printLine(post_id + " ")
delay = random.uniform(32.0,64.0)
dlcount = dlcount + 1
time.sleep(delay)
同样,它下载了一个文件,但是我下载的文件大约是200k-4m,每个文件都开始返回4k。我已将下载链接复制粘贴到浏览器中,它会提取正确的图像并且还可以下载它,所以我不确定我的代码在哪里出错了只下载4k的文件。如果这是一个服务器端问题,有没有办法从python调用wget来完成相同的事情而没有urlretreive?在此先感谢您的帮助!