python3 requests 各种发送方式详解

编辑: admin 分类: python 发布时间: 2021-12-24 来源:互联网
目录
  • 一、什么是requests,怎么安装
  • 二、requests 模块的使用
    • 2.1 get请求(最基本的请求)
    • 2.2 post请求 form-data 格式的
    • 2.3 post 请求上传文件和别的参数
    • 2.4 post 请求 json 形式的(常用)
  • 三、总结

    大凡人世间的痛苦,多是因放不下有时候我常想,痛苦,该是时光刮给生命的一场飓风吧生活,本就是以这样一种特别的方式,掀起遮盖的一切,让你看到人生的真相。

    一、什么是requests,怎么安装

    requests 是python 的一个模拟发送请求的库, 基本上调用别人接口的时候,这个是现在主流
    安装的话 直接pip就行了

    pip install requests

    二、requests 模块的使用

    我们通常进行请求之前都会先去postman上面去模拟一遍,看是否请求的通,然后再进行接口模拟,下面的介绍都是一个postman的图 之后就是用请求的代码这样看起来比较直观一点

    2.1 get请求(最基本的请求)

    在这里插入图片描述

    直接进行一个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

    2.2 post请求 form-data 格式的

    在这里插入图片描述

    这样是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

    2.3 post 请求上传文件和别的参数

    在这里插入图片描述

    这里是文件和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

    2.4 post 请求 json 形式的(常用)

    在这里插入图片描述

    这个是最常用的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)

    三、总结

    在使用这个库进行请求的时候,经常会忘了之前的哪种请求怎么用的,然后踩了一些坑 正好这里写下来记录一下

    到此这篇关于python3 requests 各种发送方式的文章就介绍到这了,更多相关python requests发送内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!

    【文章原创作者:高防服务器ip 请说明出处】