温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python程序怎么实现接口封装、请求、调用

发布时间:2020-10-29 09:20:14 来源:亿速云 阅读:554 作者:小新 栏目:编程语言

小编给大家分享一下python程序怎么实现接口封装、请求、调用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

简介:

关于接口请求和封装,最常用的是GET和POST两种方法。

接口文档需要包含信息:接口名称、接口功能、接口地址、支持格式、请求方式、请求示例、请求参数、返回参数说明。

以典型的(一两个)参数做为判断是否请求通过。

GET请求

import requests
import json
 
url = "http://v.juhe.cn/laohuangli/d"
para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
header ={}
 
r = requests.get(url,params=para,headers= header,)
#verify=True适用于服务端的ssl证书验证,verify=False为关闭ssl验证
print('get请求获取的响应结果json类型',r.text)
print("get请求获取响应状态码",r.status_code)
print("get请求获取响应头",r.headers['Content-Type'])
#响应的json数据转换为可被python识别的数据类型
json_r = r.json()
print(json_r)

POST请求

post请求有两种常用的请求格式:

1、key-value的格式'Content-Type':'application/x-www-form-urlencoded'

2、标准json的格式:'Content-Type':'application/json'

#key-value
import requests
import json
 
url = "http://v.juhe.cn/laohuangli/d"
para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
header ={}
 
r = requests.post(url,data=para,headers= header)
 
print('get请求获取的响应结果json类型',r.text)
print("get请求获取响应状态码",r.status_code)
print("get请求获取响应头",r.headers['Content-Type'])
 
#响应的json数据转换为可被python识别的数据类型
json_r = r.json()
print(json_r)
#json
import requests
import json
 
url = "http://v.juhe.cn/laohuangli/d"
para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
header ={}
#python数据类型转换为json类型(json.dumps())
para = json.dumps(para)
r = requests.post(url,data=para,headers= header)
 
print('get请求获取的响应结果json类型',r.text)
print("get请求获取响应状态码",r.status_code)
print("get请求获取响应头",r.headers['Content-Type'])
 
#响应的json数据转换为可被python识别的数据类型
json_r = r.json()
print(json_r)

把所有的请求封装在函数中

def get(url,para,headers):
    try:
        r = requests.get(url,params=para,headers=headers)
        print("获取返回的状态码",r.status_code)
        json_r = r.json()
        print("json类型转化成python数据类型",json_r)
    except BaseException as e:
        print("请求失败!",str(e))
def post(url,para,headers):
    try:
        r = requests.post(url,data=para,headers=headers)
        print("获取返回的状态码",r.status_code)
        json_r = r.json()
        print("json类型转化成python数据类型",json_r)
    except BaseException as e:
        print("请求失败!",str(e))
def post_json(url,para,headers):
    try:
        data = para
        data = json.dumps(data)   #python数据类型转化为json数据类型
        r = requests.post(url,data=data,headers=headers)
        print("获取返回的状态码",r.status_code)
        json_r = r.json()
        print("json转换为python数据类型:",json_r)
    except BaseException as e:
        print("请求失败!",str(e))
 
url = "http://v.juhe.cn/laohuangli/d"
para = {"key":"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","date":"2017-3-22"}
headers ={}
 
get(url,para,headers)
post(url,para,headers)
post_json(url,para,headers)

以上是python程序怎么实现接口封装、请求、调用的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI