Python Urllib请求在应该返回时不返回304

Python Urllib请求在应该返回时不返回304,python,http,urllib,Python,Http,Urllib,我最近一直在重新学习Python,我制作了一个小脚本来从url返回内容。但是,当添加If-Modified-Since头时,脚本从未给出错误。即使内容没有被修改 我目前拥有的脚本是: """ HTTP SERVICES Program intended to demonstrate the usage of the urllib.request module (previously urllib2). """ import urllib.request as urllib # For ge

我最近一直在重新学习Python,我制作了一个小脚本来从url返回内容。但是,当添加If-Modified-Since头时,脚本从未给出错误。即使内容没有被修改

我目前拥有的脚本是:

""" HTTP SERVICES

Program intended to demonstrate the usage of the urllib.request
module (previously urllib2).

"""

import urllib.request as urllib # For getting files off the web
import time  # For delaying purposes


# Getting the actual XML file
request = urllib.Request("some website")

# Get data first time
opener = urllib.build_opener()
feed_data = opener.open(request)
print(feed_data.read())


for i in range(1, 11):
    time.sleep(1)

    # Does not return 304
    request.add_header("If-Modified-Since",
                        feed_data.headers.["Last-Modified"])
    feed_data = opener.open(request)
    print(feed_data.read())

有人能解释为什么不返回304错误吗?

您确定在服务器端实现了基于重新验证的内容缓存吗?你能从curl或普通浏览器得到304响应吗?@shevron我没有检查过,事实上,这可能是问题所在。我试着在谷歌和其他一些网站上运行这个脚本,但它们似乎都没有返回一个304