私は良い結果でリクエストを使用しましたが、この特定のURLではリダイレクトループブレイクが発生します。<TooManyRedirects:30リダイレクトを超過しました。>> Pythonでのリクエストを使用した例外?
s = requests.Session()
page = s.get('http://pe.usps.gov/text/pub28/28apc_002.htm')
tree = html.fromstring(page.content)
street_type = tree.xpath(r"//*[@id='ep533076']/tbody/tr[2]/td[1]/p/a")
print(street_type)
リダイレクトを回避するために、リクエストのヘッダーを割り当てる方法があるのかどうかは疑問です。私は実際のURLをテストし、それは有効に見えます。
おかげ
この特殊なケースでは、ブラウザのユーザーエージェントを偽装する必要はありません。必要であれば、偽装することをおすすめします。代わりに、アプリ固有のユーザーエージェントを含めます。例えば'session.header ['User-Agent'] = 'My App'' –
これはおそらく本当です。私は火かぶ虫からコピーしたばかりです。 – James
また、完了のために、ヘッダーkwargを使用してセッション全体ではなく、個々の要求にヘッダーを追加できると付け加えてください。 'session.get(url、headers = {'user-agent': 'My app'})' –