网址库2.请求不断从代理下载缓存文件



我有一个Python 2.7脚本,它通过我们的公司代理从公共FTP站点下载ZIP文件。代理是在我的Windows服务器的系统变量中设置的。

下载文件

有效,除了我发现即使文件在FTP站点上开始更新,它也会不断下载相同版本的文件。它似乎正在从代理中获取缓存版本,而不是网络上的当前版本。

下面是获取文件的代码:

    request = urllib2.Request(download_url)
    response = urllib2.urlopen(request).read()

如何强制脚本通过代理获取当前文件,而不是缓存的文件?

你可以尝试类似附加 ?foo=bar 的 url。

解决方案是添加一个 Cache-Control 标头:

    request = urllib2.Request(download_url)
    request.add_header('Cache-Control', 'max-age=0')
    response = urllib2.urlopen(request).read()

假设代理服务器支持标头,即使 FTP 请求不支持标头。

最新更新