requests报错:raise ValueError('Invalid header name %r' % (header,)) ValueError: Invalid header name XX

报这个错误的原因是请求头里面包含以“:”开头的键 如’:path’
这些键是http2.0需要的,但是httplib只支持http1.1,不过很容易解决。

  1. 找到httplib.py这个文件,比如我的centos中,这个文件就在/usr/lib64/python2.7/httplib.py中。
vi /usr/lib64/python2.7/httplib.py

找到报错的行,这一行大约是1014行。

raise ValueError('Invalid header name %r' % (header,))

原来是因为前面加入了一个正则表达,专门用来匹配请求头中的含有:的键。
直接把这句话注视掉,并在后面加一个pass,或者直接把整一个if语句注视掉都可以。
然后:wq保存,重新启动脚本,成功运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值