如何使用美国农业部API

2024-06-06 15:19:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图按照从美国农业部的市场新闻api中提取python数据的说明进行操作,https://mymarketnews.ams.usda.gov/mymarketnews-api/authentication,但我得到了一个401错误

import requests
url = 'https://marsapi.ams.usda.gov/services/v1.2/reports'
headers={'x-api-key':'mars_test_343343'}

resp = requests.get(url, headers= headers)
print(resp.status_code) 

我无法让它工作,文档中说“在您的软件中,使用API密钥作为基本的身份验证用户名值。您不需要提供密码。”,我对API调用非常陌生,如何提供我的用户名作为API密钥,以便服务器对我进行身份验证

注意:我在代码中使用的是我的实际api密钥,而不是“mars\u test\u 343343”


Tags: httpstest身份验证apiurl密钥requestsresp
1条回答
网友
1楼 · 发布于 2024-06-06 15:19:09

基本身份验证与requests库的工作方式略有不同。您可以这样做:

from requests.auth import HTTPBasicAuth
resp = requests.get(url, auth=HTTPBasicAuth('mars_test_343343', None)

注意,由于“不需要提供密码”的模糊性,None值可能需要为空字符串''

相关问题 更多 >