我正在尝试在页面上进行表单登录,但不断出现以下类型错误。我已经阅读了Python Requests软件包文档,当我打印数据字典时,它看起来像一个有效的示例。我不确定发生了什么问题。这是我的Traceback代码:
import requests
accept = 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'
acceptlang = "en-US,en;q=0.9"
url = 'https://httpbin.org/post'
userid = 'username'
passwd = 'password'
headers = {
'Accept': accept,
'Accept-Language': acceptlang,
}
data = {userid: fakeuserid, passwd: fakepasswd}
>>> print(data)
{'username': '[email protected]', 'password': '0#CCJyy3^5Tu(Z'}
>>> response = requests.post(url, headers, data=data)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: post() got multiple values for argument 'data'
当我仅使用(url,标头)或(url,data = data)进行发布时,发布成功。我不确定这是怎么回事。
根据request API,它看起来好像您需要headers
参数的关键字,而没有哪个post()假定它为data
。尝试这个:
response = requests.post(url, headers=headers, data=data)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句