zoukankan      html  css  js  c++  java
  • requests---requests简介

      在做接口测试的时候都会用到很多工具,如postman、jmeter、soupUI等工具,除了这些工具外,我们也可以用python的第3方库requests来做接口测试。

    request简介

    requests是python实现的简单易用的HTTP库,属于python的第3方库,通过pip进行安装使用。

    requests中文文档:https://2.python-requests.org//zh_CN/latest/user/quickstart.html#

    requests安装

    1.打开cmd

    2.通过pip进行安装

    # 安装requests
    pip install requests

     

    requests发送get请求

    源码:

    def get(url, params=None, **kwargs):
        r"""Sends a GET request.
    
        :param url: URL for the new :class:`Request` object.
        :param params: (optional) Dictionary, list of tuples or bytes to send
            in the body of the :class:`Request`.
        :param **kwargs: Optional arguments that ``request`` takes.
        :return: :class:`Response <Response>` object
        :rtype: requests.Response
        """
    
        kwargs.setdefault('allow_redirects', True)
        return request('get', url, params=params, **kwargs)

    1.首先导入requests模块

    2.选择get方法请求地址:https://www.cnblogs.com/qican/

    3.可以查看请求的返回内容

    # coding:utf-8
    # 导入模块
    import requests
    # 请求地址
    url = 'https://www.cnblogs.com/qican/' 
    r
    = requests.get(url) # 请求返回内容 text = r.text print(text)

    4.请求携带参数params

    5.请求地址:http://httpbin.org/get?

    6.请求参数书写以字典形式编写如{ "name":  "requests" }

    # coding:utf-8
    # 导入requests模块
    import requests
    # 携带参数
    params = {
       "name": "request",
        "name1":"python"
    }
    # 请求地址
    url = 'http://httpbin.org/get?'
    r = requests.get(url,params=params)
    text = r.text
    print(text)
    代码结果: {
    "args": { "name": "requests", "name1": "python" }, "headers": { "Accept": "*/*", "Accept-Encoding": "gzip, deflate", "Host": "httpbin.org", "User-Agent": "python-requests/2.21.0" }, "origin": "116.247.112.151, 116.247.112.151", "url": "https://httpbin.org/get?name=requests&name1=python" }

    通过观察,可以发现最后的url地址已经被更改成了name=requests和name1=python

    requests请求post

    源码:

    def post(url, data=None, json=None, **kwargs):
        r"""Sends a POST request.
    
        :param url: URL for the new :class:`Request` object.
        :param data: (optional) Dictionary, list of tuples, bytes, or file-like
            object to send in the body of the :class:`Request`.
        :param json: (optional) json data to send in the body of the :class:`Request`.
        :param **kwargs: Optional arguments that ``request`` takes.
        :return: :class:`Response <Response>` object
        :rtype: requests.Response
        """
    
        return request('post', url, data=data, json=json, **kwargs)

    1.导入requests模块

    2.选择post方法请求:http://apis.juhe.cn/simpleWeather/query

    3.输入参数格式{”name“:”value“}

    # coding:utf-8
    import requests # 导入模块
    url = 'http://apis.juhe.cn/simpleWeather/query'      # 请求地址
    # 请求参数
    data = {
        "city":"上海",
        "key":"331eab8f3481f37868378fcdc76cb7cd"
    }
    r = requests.post(data=data,url=url)
    print(r.text)

    返回值其他内容

    r.text # 返回全部内容
    r.url  # 返回的url地址
    r.content  # 返回解码后的内容
    r.cookies  # 返回cookies
    r.headers   # 返回携带的请求头
    r.status_code  # 返回状态码
    r.json() # 返回json格式
  • 相关阅读:
    数据库
    HTTP请求(Request)和回应(Response)对象
    [Uliweb]-URL映射
    git生成Key操作保存到GITHUB中
    SQL中char、varchar、nvarchar的区别
    Uliweb之 ORM基本使用(Sqlalchemy)
    ORM查询
    CentOS更改ssh端口
    django static文件的引入方式
    Redis持久化策略(RDB &AOF)
  • 原文地址:https://www.cnblogs.com/qican/p/11153054.html
Copyright © 2011-2022 走看看