解决USDA ESMIS API中的错误请求错误

时间:2019-09-09 14:07:41

标签: python python-requests bad-request

我正在使用python中的请求库来从USDA ESMIS API获取数据,但无济于事。我不断收到错误的请求错误。

在我的终端中,命令:
curl -X POST "https://usda.library.cornell.edu/user_token" -d '{"auth": {"email":"r******@gmail.com","password":"******"}}' -H "Content-Type: application/json"

按预期工作。但是,当我使用Python尝试相同操作时,出现状态400错误。

password = getpass.getpass()
email = "*****"
data = {"auth":{"email":email,"password":password}}
headers= {"Content-Type":"application/json"}
URL = "https://usda.library.cornell.edu/user_token"
r = requests.post(url=URL,data=data,headers=headers)
r.status_code

我还尝试解析为json而不是data以及其他标头。这是我第一次使用请求库,因此可能缺少一些简单的东西。

1 个答案:

答案 0 :(得分:1)

尝试使用json参数而不是data参数。

requests.post(url=URL, json=data, headers=headers)
相关问题