我需要在没有实际下载内容的情况下检查页面是否被重定向。我只需要最终的URL。这样做的最好方法是Python? 谢谢!
答案 0 :(得分:9)
如果您特别想避免下载内容,则需要使用HEAD请求方法。我相信urllib
和urllib2
库不支持HEAD请求,因此您必须使用较低级别的httplib
库:
import httplib
h = httplib.HTTPConnection('www.example.com')
h.request('HEAD', '/')
response = h.getresponse()
// Check for 30x status code
if 300 <= response.status < 400:
// It's a redirect
location = response.getheader('Location')
答案 1 :(得分:1)
当您使用urllib2
打开网址时,如果您被重定向,则会获得30x的重定向状态。检查信息以查看您重定向的位置。您无需阅读该页面即可阅读响应中的info()
。