当数据参数包含一个和号时,如何发出HTTPPOST请求?

2024-06-01 00:42:37 发布

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

我试图从LobbyView API访问游说支出的数据。根据他们网站上的文档,我使用POST请求收集AT&T公司和Apple公司的游说数据。当我为Apple公司运行以下代码时,API按预期返回Apple的游说数据。你知道吗

import requests, json
query = {"legal_name": "Apple Inc"}
results = requests.post('https://www.lobbyview.org/public/api/reports', data = json.dumps(query))
print(results.json())

但是,当我为AT&T公司运行相同的代码时,API什么也不返回。你知道吗

import requests, json
query = {"legal_name": "AT&T Inc"}
results = requests.post('https://www.lobbyview.org/public/api/reports', data = json.dumps(query))
print(results.json()) 

我认为问题在于,美国电话电报公司(AT&T Inc.)的名称中有一个“与”号。 当数据参数包含符号(&;)(例如“AT&T Inc”)时,应如何调整代码以便发出POST请求?


Tags: 数据代码nameimportapijsonapple公司
2条回答

你的要求是正确的。你知道吗

你可以用卷发检查

curl -X POST https://www.lobbyview.org/public/api/reports -d '{"legal_name":"AT&T Inc"}'

返回空记录,但

curl -X POST https://www.lobbyview.org/public/api/reports -d '{"client_name":"AT&T Services, Inc."}'

返回大量数据。所以问题不在于符号,最有可能的是没有AT&T公司的数据

您可以尝试用%26或\&;替换

相关问题 更多 >