Bootstrap

用python发送带传参的Get和Post请求

用来访问接口的方式有两种:Get和Post
访问接口还区分是否传递参数发送请求
下面是我在工作中用的两个很简单的用python发送带传参的Get和Post请求程序

Get请求

# coding:utf-8
from urllib import request, parse
import json

# 下面是需要传递的参数
value = parse.urlencode({key1: value1, key2: value2})
# http请求头
headers = {key1: value1,
           key2: value2}
# 请求url
req = request.Request('url?%s' % value, headers=headers)  # 这样就能把参数带过去了
# 也可以用params关键字来传递这些参数

# 下面是获得响应
with request.urlopen(req) as f:
    Data = f.read()
    data = json.loads(Data)
    print(data)

Post请求

# coding:utf-8
from urllib import request, parse
import json

# 下面是需要传递的参数
values = {
    key1: value1,
    key2: value2
}
# http请求头
headers = {key1: value1,
           key2: value2}

# 请求url
req = request.Request(url, headers=headers, data=json.dumps(values).encode())
# 这里因为传递的参数是json格式的,所以需要转换成json

# 下面是获得响应数据
with request.urlopen(req) as f:
    print('Status:', f.status, f.reason)
    for k, v in f.getheaders():
        print('%s: %s' % (k, v))
    Data = f.read().decode('utf-8')
    print(Data)
        

写的有些粗糙,欢迎指正。

;