4

CookieJar を新しい requests.Session オブジェクトにロードするにはどうすればよいですか?

cj = cookielib.MozillaCookieJar("mycookies.txt")
s = requests.Session()

これは私が作成したもので、セッションは Cookie を保存しますが、ファイルから Cookie を取得したいと考えています
(セッションは cookieJar をロードする必要があります)。これはどのように達成できますか?
ドキュメントを検索しましたが、コード例しか見つけることができず、cookieJar をロードすることはなく、1 つのセッション中に Cookie を保存するだけです。

4

3 に答える 3

1

(およびリクエスト) オブジェクトcookies=に提供できるオプションがあります。requests.Session

クッキー = なし

このセッションで設定された現在未解決のすべての Cookie を含む CookieJar。デフォルトでは RequestsCookieJar ですが、他の cookielib.CookieJar 互換オブジェクトでもかまいません。

参照: https://2.python-requests.org/en/latest/api/#requests.Session.cookies

したがって、次のようになります。

s = requests.Session(cookies=cj)

更新:コメントでmataが正しく指摘しているようにrequests.get、私は the などを混乱させていました。Cookieはセッション オブジェクトの属性であり、init パラメータではないため、これは機能しません。セッションを構築した後の s.cookies = cj は次のようになります。request.post

したがって、次を使用します。

s = requests.Session()
s.cookies = cj
于 2015-03-22T22:13:02.977 に答える