我有一个 url,当它打开时,它所做的只是启动下载,然后立即关闭页面。我需要用python捕获这个下载(一个png)并将它保存到我自己的目录中。我已经尝试了所有常用的 urlib 和 urlib2 方法,甚至尝试过使用 mechanize 但它不起作用。
网址自动开始下载然后关闭肯定会导致一些问题。
更新:具体来说,它使用 Nginx 来提供带有 X-Accel-Mapping 标头的文件。
X-Accel-Mapping
标题没有什么特别的。也许页面使用 ajax 发出 HTTP 请求,并使用X-Accel-Mapping
reader 值触发下载?
这是我的做法urllib2
:
response = urllib2.urlopen(url_to_get_x_accel_mapping_header)
download_url = response.headers['X-Accel-Mapping']
download_contents = urllib2.urlopen(download_url).read()
import urllib
URL= YOUR_URL
IMAGE = URL.rsplit('/',1)[1]
urllib.urlretrieve(URL, IMAGE)
有关从 url 列表中动态下载图像的详细信息,请访问此处