将curl命令转换为工作脚本

时间:2019-03-07 18:50:32

标签: python-3.x curl python-requests

我正在使用来自check-host.net的API来ping网站。 我的问题是现在,我不知道如何将curl命令api转换为有效的python脚本。我尝试了在这里找到的各种方法,但可惜的是没有一种方法可以满足我的需求。

curl工作命令:

curl -H "Accept: application/json" \   https://check-host.net/check-tcp?host=smtp://gmail.com&max_nodes=1

响应看起来像这样:

  

{“ ok”:1,“ request_id”:“ 29”,“ permanent_link”:   “ https://check-host.net/check-report/29”,“节点”:{       “ 7f000001”:[“ it”,“意大利”,“马可”]}

1 个答案:

答案 0 :(得分:1)

您必须在请求中发送Accept: application/json标头。您也可以在请求中使用builtin json decoder

import requests
headers={
'Accept': 'application/json'
}
r=requests.get('https://check-host.net/check-tcp?host=smtp://gmail.com&max_nodes=1',headers=headers)
print(r.json())

输出

{'nodes': {'us2.node.check-host.net': ['us', 'USA', 'New Jersey', '199.38.245.218', 'AS394625', 'OK']}, 'ok': 1, 'permanent_link': 'https://check-host.net/check-report/a462c3ck399', 'request_id': 'a462c3ck399'}