Python 请求无效 header 值

标签 python cookies python-requests cookiejar

我使用 cookie 导出插件从 Firefox 导出了 cookies.txt 文件。我尝试将 cookie 文件与 python 请求一起使用,但得到这个...

ValueError: Invalid header value

我的代码:

import requests
cj = cookielib.MozillaCookieJar()
cj.load('cookies.txt', ignore_discard=True)
r = requests.get('blah.com', cookies=cj)

我能做什么?

最佳答案

Python 2.7 版本:

import os
import cookielib
import requests
cj = cookielib.MozillaCookieJar()
cookiepath = os.getcwd()
cj.load(os.path.join(cookiepath, 'cookies.txt'))
r = requests.get('https://stackoverflow.com', cookies=cj)

Python 3.6版本(已测试):

import os
import http.cookiejar
import requests
cj = http.cookiejar.MozillaCookieJar()
cookiepath = os.getcwd()
cj.load(os.path.join(cookiepath, 'cookies.txt'))
r = requests.get('https://stackoverflow.com', cookies=cj)
print(r.cookies)  #<RequestsCookieJar[Cookie(version=0, name='prov', value='619.....1a9f2f'....rfc2109=False)]>
print(r.headers) #{'Content-Type': 'text/html; charset=utf-8', 'Content-Encoding': 'gzip', 'X-Frame-Options': 'SAMEORIGIN'...}

“cookies.txt”必须是 Netscape 格式的 cookies 文件。有Firefox add-ons可以此格式导出 cookie。另外,请确保该文件位于当前工作目录路径中,以便上述代码能够正常工作。

关于Python 请求无效 header 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49283825/

相关文章:

python - 分类变量到多列

php - 在 Symfony2 中判断路由是否在防火墙后面

browser - Cookie 中可以存储多少数据

python - Requests/lxml 脚本仅在终端中工作,但在 IDLE 或 PythonAnywhere 中未检索到任何数据?什么可能导致这种情况?

python - 使用Python请求页面的第二次加载

python - 我想将文件作为 API POST 请求的附件发送

python - 使用 pandas.DataFrame.interpolate 向 DataFrame 添加行

python - 在 Python 中生成非常大的文本文件的时间性能

c# - FromsAuthenticationTicket.UserData 始终为空并且身份验证 cookie 不保留值

python - 更新 Tkinter 中的标签元素