Requests模块的原理以及封装
作者:互联网
requests的主要方法
def get(url, params=None,**kwargs): def post(url, data=None, json=None,**kwargs): def put(url, data=None,**kwargs): def delete(url,**kwargs): def request(method, url,**kwargs):这个是前面四个方法统一调用的方法。 def session():回话,web项目中从登陆和退出就是一个回话。session对象的request方法 def request(self, method, url,params=None, data=None, headers=None, cookies=None, files=None, auth=None, timeout=None, allow_redirects=True, proxies=None, hooks=None, stream=None, verify=None, cert=None, json=None):
post请求中data传参和json传参的本质
#字典和json的区别:data是字典,json是json个数,也是字符串 https://www.cnblogs.com/zwx901323/p/16461310.html
Postman中Post请求的四种不同的传参方式以及它们对应的请求头
#文件上传:Content-Type:multipart/form-data (files) #表单:Content-Type:application/x-www-form-urlencoded (data) #文本raw: Content-Type:application/json (json) Content-Type:text/plain (data) Content-Type:application/javascript (data) Content-Type:text/html (data) Content-Type:application/xml (data) #二进制:Content-Type:application/octrent-stream (files)
requests主要参数
""" method, 请求方式 url, 请求路径 params=None, get请求传参 data=None, post或put请求传参 json=None post请求传参 headers=None, 请求头 cookies=None, Cookie信息 files=None, 文件上传 auth=None, 鉴权 timeout=None, 超时处理 allow_redirects=True, 是否允许重定向 proxies=None, 代理 hooks=None, 钩子 stream=None, 文件下载 verify=None, 证书验证 cert=None, CA证书 """
requests返回对象
res.text 返回文本格式 res.content 返回bytes类型数据 res.json() 返回json数据 res.status_code 返回状态码 res.reason 返回状态信息 res.cookies 返回cookie信息 res.encoding 返回编码格式 res.headers 返回响应头 res.request 返回请求的信息和数据
封装接口示例
import requests class Send_method: #会话,自定义管理cokei session = requests.session() def all_send_request(self, url = "", method = "get", **kwargs): print("============测试开始========================") res = Send_method.session.request(method, url, **kwargs) print(f"url地址:{res.url}") print(f"状态码:{res.status_code}") print("============测试结束========================") return res if __name__ == '__main__': s = Send_method() url = "https://www.baidu.com" s.all_send_request(url=url, method="get") """ ============测试开始======================== url地址:https://www.baidu.com/ 状态码:200 ============测试结束======================== """
标签:None,封装,url,res,json,模块,Requests,data,method 来源: https://www.cnblogs.com/zwx901323/p/16492124.html