我在使用Python處理某個重定向時遇到了問題。我正在請求一個明顯加載並立即重定向到ww1.www.com的頁面。我假設情況是這樣,因爲我已經嘗試了每種我知道的返回標題/狀態代碼的方法,並始終以相應的結果(狀態代碼:200,適當的主機/引用參數等)結束。如何用python/urllib狀態碼仍然處理重定向200?
以下是我有:
from BeautifulSoup import BeautifulSoup
import urllib
import psycopg2
import psycopg2.extras
db = psycopg2.connect(
host = 'myIP'
database = 'myDATABASE'
user = 'myUSERNAME'
password = 'myPASSWORD'
)
cursor = db.cursor(cursor_factory = psycopg2.extras.RealDictCursor)
cursor.execute("SELECT info FROM table")
for row in cursor:
url = 'http://www.website.com/' + row['info']
file_pointer = urllib.urlopen(url)
html_object = BeautifulSoup(file_pointer)
if file_pointer.getcode() != 200:
continue
if語句應該避免任何進一步的代碼,如果狀態代碼不被執行不等於200,但是我得到的代碼索引錯誤本節之後,並經過調查提供錯誤的網址,我發現它重定向沒有給我一個狀態代碼:302.
任何想法,爲什麼我會得到200狀態碼響應,同時仍然重定向? (我也試過與urllib2和httplib等價)另外,我怎樣才能防止這種情況發生?
你可能要檢查網頁中是否有相對=「規範」 – KKa 2014-09-25 16:40:45