web-dev-qa-db-ja.com

Pythonリクエストライブラリのgetメソッドでヘッダーを使用する

そこで、最近、PythonでHTTPリクエストを処理するためのこの素晴らしいライブラリに出会いました。ここにあります http://docs.python-requests.org/en/latest/index.html

私はそれを使うのが大好きですが、getリクエストにヘッダーを追加する方法がわかりません。助けて?

101
Breedly

api によれば、requests.getを使用してヘッダーをすべて渡すことができます。

r=requests.get("http://www.example.com/", headers={"content-type":"text"})
180
cwallenpoole

リンクしたページの docs によれば、非常に簡単なようです(エンファシスマイニング)。

requests.get(url、params = None、headers = None、cookies = None、auth = None、timeout = None)

GETリクエストを送信します。 Responseオブジェクトを返します。

パラメーター:

  • url –新しいRequestオブジェクトのURL。
  • params –(オプション)Requestで送信するGETパラメーターの辞書。
  • headers –(オプション)Requestで送信するHTTPヘッダーのディクショナリ。
  • cookies-(オプション)Requestで送信するCookieJarオブジェクト。
  • auth –(オプション)基本HTTP認証を有効にするAuthObject。
  • timeout –(オプション)リクエストのタイムアウトを記述するフロート。
30
John Flatness

この回答 セッション全体にヘッダーを設定できることを教えてくれました:

s = requests.Session()
s.auth = ('user', 'pass')
s.headers.update({'x-test': 'true'})

# both 'x-test' and 'x-test2' are sent
s.get('http://httpbin.org/headers', headers={'x-test2': 'true'})

ボーナス: セッションはクッキーも処理します。

15
Cees Timmerman