【发布时间】:2011-04-04 22:01:52
【问题描述】:
他们在 python 文档中没有提到这一点。最近我正在测试一个网站,只是使用 urllib2.urlopen() 来提取某些内容来刷新网站,我注意到有时当我更新网站时 urllib2.urlopen() 似乎没有得到新添加的内容。所以我想知道它会在某处缓存东西,对吗?
【问题讨论】:
-
Web 服务器也会缓存内容。这是通常的罪魁祸首。检查结果的标题,然后更新您的问题以包含
info()。 -
@S.Lott:“Web 服务器也缓存东西”这是否意味着如果我没有使用 urllib2.urlopen() 获得更新的结果,主要是 Web 服务器“知道”它让我耳目一新不要给我更新的东西?每次我刷新网站时,有没有办法强制服务器重新传输数据?
-
除非您对网络服务器有很多的了解,否则您并不真正知道它有哪些缓存。它可以有多个级别的缓存。它可能配置不正确的缓存。它可能包含不提供刷新缓存信息的页面。服务器端可能会出错。
-
@S.Lott:非常感谢。所以 urllib2.urlopen() 本身不会在我的电脑端缓存东西,对吧?