requests 是python 的一个模拟发送请求的库, 基本上调用别人接口的时候,这个是现在主流
安装的话 直接pip就行了
pip install requests
我们通常进行请求之前都会先去postman上面去模拟一遍,看是否请求的通,然后再进行接口模拟,下面的介绍都是一个postman的图 之后就是用请求的代码这样看起来比较直观一点
直接进行一个get请求的代码是这样的
# 导入模块 import requests # 定义请求地址 url = 'http://www.baidu.com/' # 定义自定义请求头 headers = { "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36" } # 定义 GET 请求参数 params = { "kw":"dzw" } # 使用 GET 请求参数发送请求 response = requests.get(url,headers=headers,params=params) # 获取响应的 html 内容 html = response.text
这样是post 表单传参,这样基本上也用来文件上传
# 导入模块 import requests # 定义请求地址 url = 'https://dzw.news.qq.com/pet/send' # 定义 fomedata 请求参数 m = MultipartEncoder( fields={"uid":"4054942","gift":"4"} ) # 定义自定义请求头 并且制定类型 headers = { "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36", "Content-Type":m.content_type } # 使用 POST 请求参数发送请求 response = requests.post(url,headers=headers,data= m) # 获取响应的 html 内容 html = response.text
这里是文件和dirCode 两个参数 在post请求的时候 就要把他单独来传
# 导入模块 import requests # 定义请求地址 url = 'http://127.0.0.1:8183/oss/uploadFile' headers = { # 注意这里不能指定 Content-Type "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36" } # 这里指定dirCode 别的参数 m = { "dirCode": "1002" } # 这里指定文件 files = {'file': open('站点基础数据录入模板.xlsx', 'rb')} # 使用 POST 请求参数发送请求 response = requests.post(url,headers = hearders, data= m,files = files) # 获取响应的 html 内容 html = response.text
这个是最常用的json形式的传参
# 导入模块 import requests # 定义请求地址 url = 'http://127.0.0.1:8183/notice/test' headers = { # 这里指定 Content-Type 是json 格式的 "Content-Type":"application/json", "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36" } # 指定参数 data = { "id":"dzw", "recipientPeopleList":["d6576263-4868-4420-a91b-17f3993582ff","e332a43a-9ab5-4827-a5f8-92acb2469bb9","d3cd8347-5a08-4c22-99ed-df153cbe6f41"] } # 发起请求 注意 data 是放在json 里面的 response = requests.post("http://127.0.0.1:8183/notice/test",headers = hearders, json = data) # 打印参数 print(response.text)
在使用这个库进行请求的时候,经常会忘了之前的哪种请求怎么用的,然后踩了一些坑 正好这里写下来记录一下
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理