1

私はhtmlページを読むためにurllib2モジュールを使用しています。以下は私のコードです

コード.py

import urllib2, httplib

httplib.HTTPConnection.debuglevel = 1  
request = urllib2.Request("http://www.vodafone.in/Pages/tuesdayoffers_che.aspx")
opener = urllib2.build_opener()
f = opener.open(request)
print f.url

結果

'http://www.vodafone.in/pages/tuesdayoffers_che.aspx?cid=che'

ブラウザで上記のURLを指定すると、にリダイレクトされhttp://www.vodafone.in/pages/home_che.aspx?cid=cheますが、上記のコードから同じ指定のURLを取得しています

最後に、urllib2 を使用してリダイレクトされた URL をキャッチし、そこからデータを読み取る方法は、他の URL にリダイレクトされる URL がいくつかあったためです。最終的に私の意図は、リダイレクトされた URL をキャッチし、キャッチされた URL からデータを読み取ることです。だから、Pythonでこれを達成する方法urllib2 and httplib

4

2 に答える 2

2

正規表現は必要ありません。サイトはJavaScriptでリダイレクトされていますが、302ステータスコードが返されます。これは次の方法で確認できます。

url = 'http://www.vodafone.in/Pages/tuesdayoffers_che.aspx'
file_pointer = urllib2.urlopen(url)
print file_pointer.getcode()

302ステータスコードが返さLocationれると、応答ヘッダーにヘッダーがあります。これは次の方法で表示できます。

url = 'http://www.vodafone.in/Pages/tuesdayoffers_che.aspx'
file_pointer = urllib2.urlopen(url)
print file_pointer.info()

LocationURLを記録します。リダイレクトされたページになります。

于 2013-01-09T17:00:39.933 に答える