1

Pythonリクエストの例から直接、次のスニペットがあります。

payload = {'key1': 'value1', 'key2': 'value2'}  
r = requests.get("http://httpbin.org/get", params=payload)  
print r.url  
u'http://httpbin.org/get?key2=value2&key1=value1'

しかし、Webサイトからデータをプルしようとすると(リクエスト0.13.0を使用):

payload = {'one' : 'one', 'two' : 'two' }  
r = requests.get("http://[ip_removed]/clubs/pairs_results/personal.php", params=payload)
print r.url  
http://[ip_removed]/clubs/pairs_results/

それはまったく正しくエンコードされていません。アイデア?

編集:サイトが302リダイレクトを発行しているようです。ブラウザに表示されるのと同じhtmlを取得するには、どうすればよいですか。

4

1 に答える 1

4

このサイトは単純にHTTP 302-redirect here を実行するだけrequestsなので、最初に要求された URL とは異なる URL にアクセスすることになります。これはエラーではありませんが、予想される動作です。

それを望まない場合はallow_redirects=False、リクエストを送信するときにキーワード引数を追加できます。

ちなみに、IPを削除しても、Google検索を使用するとinurl:...、ここで話しているサイトがすぐにわかります...

于 2012-05-30T11:48:31.673 に答える