如何在wget或python中获取网页的当前版本?我需要完全关闭缓存。
我正在尝试编写代码,以便每秒下载http://robocademy.com/courses/arduino/get_code/。使用python的urllib和wget,我不会像在chrome中那样获取当前文件。
我试过了
wget --cache=off --user-agent="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" http://robocademy.com/courses/arduino/get_code/
和带有urllib.urlcleanup的urllib
Chrome中的响应头:
Accept-Ranges:bytes
Age:0
Connection:keep-alive
Content-Encoding:gzip
Content-Length:449
Content-Type:text/plain
Date:Wed, 28 Nov 2012 23:20:24 GMT
Server:nginx
Vary:Accept-Encoding
Via:1.1 varnish
X-Varnish:400211059
wget中的响应头
HTTP/1.1 200 OK
Server: nginx
Content-Type: text/plain
Keep-Alive: timeout=20
Vary: Accept-Encoding
Transfer-Encoding: chunked
Date: Wed, 28 Nov 2012 23:22:20 GMT
X-Varnish: 400216320 400212892
Age: 76
Via: 1.1 varnish
Connection: keep-alive
最佳答案
您可以尝试将--no-cache
添加到wget。根据手册:
禁用服务器端缓存。在这种情况下,wget将向远程服务器发送适当的指令(“pragma:no cache”)以从远程服务获取文件,而不是返回缓存的版本。这对于在代理服务器上检索和刷新过期文档特别有用。
默认情况下允许缓存。cache=off
应该进入wgetrc
文件。
对于python,您可以考虑这个answer。
关于python - 获取网页的当前版本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13616340/