gpt4 book ai didi

python - python urllib2.request.add_header 未返回 HTTP 错误 304(未修改)异常

转载 作者:可可西里 更新时间:2023-11-01 16:23:01 26 4
gpt4 key购买 nike

我正在尝试使用 python urllib2 库实现处理 HTTP 的 Last-Modified 功能,这样如果服务器的 GET 响应自上次以来未被修改,它应该抛出“urllib2.HTTPError:HTTP 错误 304:未修改”。我已经使用下面的代码实现了相同的功能,但不确定为什么我没有收到 304 响应。

我还对 urllib2.py 进行了研究,但未在该模块中找到状态代码 304 实现的任何细节。

下面是我的代码和结果:

import httplib
import urllib2

httplib.HTTPConnection.debuglevel = 1
request = urllib2.Request('http://www.iitg.ac.in/groff/projects.html')
opener = urllib2.build_opener()
firstdatastream = opener.open(request)
print firstdatastream.headers.dict
request.add_header("If−Modified−Since", firstdatastream.headers.dict['last- modified'])
print "Value of last modified time \n"
var = firstdatastream.headers.dict['last-modified']
print var
seconddatastream = opener.open(request)
print seconddatastream.headers.dict

代码的倒数第二行应该引发“urllib2.HTTPError:HTTP 错误 304:未修改”,因为(这行代码): request.add_header("If−Modified−Since", firstdatastream.headers.dict['last-modified'])

但我无法在我的控制台结果中看到它。下面是我的结果:

{'content-length': '6706', 'accept-ranges': 'none', 'server': 'Apache/2.2.15 (Red Hat)', 'last-modified': 'Thu, 07 2015 年 5 月 09:27:08 GMT', 'connection': 'close', 'etag': '"8a0ce0-1a32-5157a83ffe2b7"', 'date': 'Fri, 14 Aug 2015 06:22:02 GMT', '内容类型':'文本/html;字符集=UTF-8'}最后修改时间值

2015 年 5 月 7 日星期四 09:27:08 GMT

{'content-length': '6706', 'accept-ranges': 'none', 'server': 'Apache/2.2.15 (Red Hat)', 'last-modified': 'Thu, 07 May 2015 09:27:08 GMT', 'connection': 'close', 'etag': '"8a0ce0-1a32-5157a83ffe2b7"', 'date': 'Fri, 14 Aug 2015 06:22:02 GMT', 'content-type': 'text/html; charset=UTF-8'}

任何帮助将不胜感激。非常感谢。

最佳答案

我也遇到了这个问题,我的解决方案是从谷歌浏览器复制到请求 header 的网络中,标题= { '接受': 'application/json, text/javascript, /; q=0.01', '接受编码':'gzip,放气,sdch', '接受语言': 'zh-CN,zh;q=0.8', '连接':'保持事件', 'Host': 'stockpage.10jqka.com.cn', '推荐人':'http://stockpage.10jqka.com.cn/000001/bonus/ ', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36', 'X-Requested-With': 'XMLHttpRequest' }使用方法,request = urllib2.Request(url, headers=headers)response = urllib2.urlopen(请求)

关于python - python urllib2.request.add_header 未返回 HTTP 错误 304(未修改)异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32008714/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com