zoukankan      html  css  js  c++  java
  • Python+requests 发送简单请求--》获取响应状态--》获取请求响应数据

    Python+requests 发送简单请求--》获取响应状态--》获取请求响应数据

    1、环境:安装了Python和vscode编译器(Python自带的编译器也ok)、fiddler抓包工具(先用fiddler抓包工具获取请求url和headers请求头相关数据)

    2、模拟向XX平台,发送新增成员编号信息,并查询新增的成员编号信息(自己找个平台测试)

     

    3、代码:

    import requests
    import json
    '''发送新增警员信息的http请求'''
    #以字典的方式存储需要传递的参数
    add_url = 'http://XX.XXX.XXX.XX:端口号/car-oss/webapi/pcWatch/save'
    add_par = {
        'pcNum':'95830',
        'pcName':'测试',
        'pcPhoneNum':'22345',
        'orgname':'M1对讲',
        'watchImei':'11220'
    }
    #以字典方式储存定制的headers请求头信息
    add_header = {
        'Content-Type':'application/json',
        'connection':'keep-alive'
    }
    #用户登录前的cookies,因为用户登录后才能进行新增警员信息的操作
    add_cookie = {
        "JSESSIONID":"3E2ED9359E53D31FBD13FE2ADE9D20D2"
    }
    r = requests.post(add_url,data=json.dumps(add_par),headers=add_header,cookies=add_cookie)#参数要转json格式传输要使用json.dumps()进行转换
    #以文本方式获取请求响应内容
    print(r.text)
    '''
    查询上刚刚新增的那条信息
    '''
    Search_url='http://XX.XXX.XXX.XX:端口号/car-oss/webapi/easyflow/datatable/queryresult'
    Search_par={
        "pageSize":10,
        "pageIndex":1,
        "orgname":"M1对讲",
        "pcNum":"95830",
        "watchImei":"",
        "name":"pc_watch_manage"
    }
    Search_header={
        'Content-Type':'application/json'
    }
    Search_cookie={
        'JSESSIONID':'3E2ED9359E53D31FBD13FE2ADE9D20D2'
    }
    r1 = requests.post(Search_url,data=json.dumps(Search_par),headers=Search_header,cookies=Search_cookie)
    print(r1.text)

    运行结果:

    success#新增成员信息请求响应内容
    {"result":true,"msg":"success","data":{"pageIndx":1,"totalSize":1,"pageSize":10,"totalPage":1,"list":[{"id":"2c9220956c99b744016d00a758356582","pcNum":"95830","pcName":"测试","pcPhoneNum":"22345","orgname":"M1对讲","watchImei":"11220"}]}}#查询刚刚新增信息请求的响应内容

    4、requests常用属性和方法

    (1)发送请求后,返回各种形式的响应内容:

      1)r.text:以文本格式返回响应内容

      2)r.content:以字节格式返回响应内容

      3)r.json():以json格式返回相应内容,因为就算请求出错也会返回一串json格式的字符串。所以可以使用r.status_code或者r.raise_for_status来判断响应是否成功

      4)如果在原始请求中设置了stream=True,可以使用r.raw.read()

  • 相关阅读:
    jQuery操作CheckBox的方法(选中,取消,取值)详解
    checkAll操作
    java 去掉重复的数字
    multiselect多选下拉框
    toggle() 隐藏和收缩
    Test 6.29 T4 简单数据结构练习
    Test 6.29 T3 小学生
    Test 6.29 T2 染色
    Test 6.29 T1 预算方案
    [洛谷P3338] ZJOI2014 力
  • 原文地址:https://www.cnblogs.com/xswt/p/11468407.html
Copyright © 2011-2022 走看看