[英]Error while sending POST request with data
I tried to create program which will create account on this site: https://www.kostkuj.cz/register My main problem is that i dont really know how it works, so i re-builded one project to my requirements. 我试图创建将在此站点上创建帐户的程序: https : //www.kostkuj.cz/register我的主要问题是我真的不知道它是如何工作的,所以我根据自己的要求重新构建了一个项目。
I also tried sending requests with login data as parsed text: 我还尝试发送带有登录数据作为已解析文本的请求:
email: "email@gmail.com"
plainPassword: {first: "pass1", second: "pass1"}
first: "pass1"
second: "pass1"
username: "username3"
But i dont know what i am doing wrong. 但是我不知道我在做什么错。
This is my whole code: 这是我的整个代码:
import requests
headers = {
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36 OPR/63.0.3368.71'
}
register_data = {
{"username":"username3","email":"email@gmail.com","plainPassword":{"first":"pass1","second":"pass1"}}
}
with requests.Session() as s:
url = 'https://api.kostkuj.cz/register'
r = s.get(url, headers=headers)
r = s.post(url, data=register_data, headers=headers)
print(r.content)
I am getting error like: 我收到如下错误:
Traceback (most recent call last):
File "C:\Users\jiris\Desktop\spamkostkuj.py", line 9, in <module>
{"username":"username3","email":"email@gmail.com","plainPassword":{"first":"pass1","second":"pass1"}}
TypeError: unhashable type: 'dict'
干得好:
r = s.post(url, json=register_data, headers=headers)
First thing headers
needs ro in pair ie key value pair. 第一件事headers
需要成对,即键值对。 In your case somthing like: 在您的情况下,例如:
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36 OPR/63.0.3368.71'
}
Secondly, your are sending data as dict of dict which is incorrect, instead send a dict
, like: 其次,您以不正确的dict的形式发送数据,而是发送dict
,例如:
register_data = {"username":"username3","email":"email@gmail.com","plainPassword":{"first":"pass1","second":"pass1"}}
Try this. 尝试这个。 Hopefully is should work for you. 希望是应该为您工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.