4
我需要檢查頁面是否被重定向或沒有實際下載內容。我只需要最終的網址。 Python的最佳做法是什麼? 謝謝!如何確定一個頁面是否被重定向
我需要檢查頁面是否被重定向或沒有實際下載內容。我只需要最終的網址。 Python的最佳做法是什麼? 謝謝!如何確定一個頁面是否被重定向
如果您特別想避免下載內容,則需要使用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')
當您打開帶有urllib2
的URL,並且您被重定向時,您將獲得重定向狀態30x。查看信息以查看您重定向到的位置。您無需閱讀該頁面即可閱讀作爲響應一部分的info()
。
是否urllib2的給你一個方法來發出HEAD命令?這通常是在沒有傳輸頁面內容的網絡開銷的情況下獲取所需信息的方式。 – 2008-12-01 19:17:35
您不必閱讀該頁面。你的迴應包括一個你可以簡單關閉的套接字。 – 2008-12-01 19:29:11