将curl转换为请求或urllib

2024-09-30 10:40:56 发布

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

我正在使用Vis Studio代码和python3(在IOs上)

在终端中,如果键入以下命令:

curl --data "method=getmydata" https://mywebsite.com/api

当我将方法替换为相关的方法,将网站替换为相关的网站时,它将返回我要查找的所有数据

但是,我想编写一个python脚本来完成这项工作(在visualstudio代码中),并将输出json写入一个我可以查询的文件

如何使用urllib或请求来执行此操作


Tags: 方法代码https命令终端data键入网站
2条回答

下面是使用requests包的代码

http://docs.python-requests.org/en/master/user/quickstart/

import json
import requests
data = {'key1': 'value1', 'key2': 'value2'}
data = json.dumps(data)
headers = {'Content-Type': 'application/json'}

r = requests.post("https://mywebsite.com/api", data=data, headers=headers)
print(r.text)   # or r.json() if response is json

如果您的api接受表单数据,则不传递Content-Type头,也不需要转储数据。会的

import requests
data = {'key1': 'value1', 'key2': 'value2'}
r = requests.post("https://mywebsite.com/api", data=data)
print(r.text)

看看urllib.request,工作示例:

def run_webRequest(url):
    import urllib.request
    opener = urllib.request.FancyURLopener({})   
    with opener.open(url) as f:
        print(f.read().decode('utf-8'))

然后,您可以停止读取,将f写入一个文件,然后再读取它。希望有帮助

相关问题 更多 >

    热门问题