python3发送request请求及查看返回结果实例

我就废话不多说了,大家还是直接看代码吧!

import requests
import json

raw = {}

headers中添加上content-type这个参数,指定为json格式

headers = {‘Content-Type': ‘application/json'}

post的时候,将data字典形式的参数用json包转换成json格式。

response = requests.post(url=‘XXXX',
headers=headers, data=json.dumps(raw))

返回信息

print(response.text)

返回响应头

print(response.status_code)

补充知识:python3使用requests发送post请求,对接口返回的数据进行处理,最后塞入list,保存到本地的excel中

我就废话不多说了,大家还是直接看代码吧!

#coding:utf-8

import http.cookiejar
import json
from urllib import parse,request
import requests
from openpyxl import Workbook
import datetime

name = 'tarcuper'
allowed_domains = ['*']
start_urls1 = 'https://www.tracup.com/api/issues/view'
start_urls2 = 'https://www.tracup.com/api/issues/getTrendList'

cookies = {
  "acw_tc": "78197306155549842936beitidaile9532fb18575fad1fc268ee",
  "_ga": "GA1.2.1414148155.1555498434",
  "PHPSESSID": "q7hj5m5neitidaile95efop7eee37ki",
  "_gid": "GA1.2.1742874168.1557716531",
  "pgyx2_session": "wN99ZYREthkeqaL92z0TyFP1W7u3WMIsN8MhrIxaP7m4pHYCERP8p9X7RlR4p3zIhkID%2B2SpEj%2BWQ2L%2FVZlV7DqvMQHvZAEDNMtr88KWpCxMB7U%2FCUasbRfR7HA6GtXfsezWclbCwkHNVanq0Pd2uh5U051O1gh3ducUjpugaydrcKG65bg7ae%2BsVx4pgqUyHB00%2F%2Fvh3cPGTbTNHdWIolrA7QRhH6K5OWQlfgIH1ugvnd69LYeitidaile95WyxIJZC4XtUOJA7YYkTQReN2P92E%2BrwxCcRJCHWm6vs9Jw1IrgdFo%2BXzG4ylpZFCtFGK0RmgX%2FR3n9Cc%2FMdE1AsMG58xCDYVbt9Bz4Fe53CR1ujRMX9MWWeHyZt5vcbRT%2FIQhcapZREpR7qgsdQ0ZAfPFvZGa1RPtSFxqrFN%2BGUhPhLy%2BNu0fK4n%2F99ZWiG7rrxk%2BPybM2gQZ2JZ5KYXvAGiQ%2Bq4%3D"
}

headers = {
  "Host": "www.tracup.com",
  "Connection": "keep-alive",
  "Cache-Control": "no-cache",
  "Pragma": "no-cache",
  "If-Modified-Since": "0",
  "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36",
  "Accept": "*/*",
  "Referer": "https://www.tracup.com/cloud/",
  "Accept-Encoding": "gzip, deflate, br",
  "Accept-Language": "zh-CN,zh;q=0.9",
}

def request2():
  req2 = requests.post(url=start_urls2, data=data, headers=headers, cookies=cookies)
  res2 = req2.text
  res2 = json.loads(res2)
  bbb = (res2['data'])
  # print(bbb)
  # print('上面bbb,下面cccc')
  ccc = (bbb['list'])
  # print(ccc)
  for var in ccc:
    iac_created = var.get('iac_created')
    log = var.get('log')
    # print(log)
    # print(iac_created)
    if log == "修改状态为 已解决":
      return iac_created

wb = Workbook()
ws = wb.create_sheet("che")
for i in range(1,500):
  data = {
    "pKey":"916338276d07f3c1cacc662b2afa93c2",
    "iNo":str(i),
    }
  req = requests.post(url=start_urls1, data=data, headers=headers, cookies=cookies)
  res = req.text
  res = json.loads(res)
  aaa = (res['data'])
  _alist = []
  j = 0

  try:
    iac_created = request2()
    i_no = aaa['i_no']
    author = aaa['author']
    assigner = aaa['assigner']
    i_created = aaa['i_created']
    i_updated = aaa['i_updated']
    i_status = aaa['i_status']
  except:
    pass
  if i_status == 'a3f47781286ee2ba2bbefbebd0bea5bc' and iac_created != None:
      _alist.append(i_no)
      _alist.append(author)
      _alist.append(assigner)
      _alist.append(i_created)
      _alist.append(iac_created)
      d1 = datetime.datetime.strptime(i_created, '%Y-%m-%d %H:%M')
      d2 = datetime.datetime.strptime(iac_created, '%Y-%m-%d %H:%M:%S')
      d = d2-d1
      days = d.days
      delta = d.seconds
      h = round(days*24+delta/3600)
      _alist.append(h)
      print(_alist)
      ws.append(_alist)
  wb.save("aaa.xlsx")

以上这篇python3发送request请求及查看返回结果实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python3模拟curl发送post请求操作示例

    本文实例讲述了Python3模拟curl发送post请求操作.分享给大家供大家参考,具体如下: 后端给的接口样式: curl "http://65.33.44.43:509/pre/update" -H "Content-Type: text/json" -d '{"TYPE":"PRE-FILTER_UPDATE", "DATA":[{"SN":"1E3006CEBFE00&

  • Python发送http请求解析返回json的实例

    python发起http请求,并解析返回的json字符串的小demo,方便以后用到. #! /usr/bin/env python # -*- coding:gbk -*- import os import sys import json import urllib import urllib2 if __name__ == "__main__": query_file = sys.argv[1] query_index = 0 with open(query_file, 'r') a

  • Python3处理HTTP请求的实例

    Python3处理HTTP请求的包:http.client,urllib,urllib3,requests 其中,http 比较 low-level,一般不直接使用 urllib更 high-level一点,属于标准库.urllib3跟urllib类似,拥有一些重要特性而且易于使用,但是属于扩展库,需要安装 requests 基于urllib3 ,也不是标准库,但是使用非常方便 个人感觉,如果非要用标准库,就使用urllib.如果没有限制,就用requests # import http.cli

  • python3发送request请求及查看返回结果实例

    我就废话不多说了,大家还是直接看代码吧! import requests import json raw = {} headers中添加上content-type这个参数,指定为json格式 headers = {'Content-Type': 'application/json'} post的时候,将data字典形式的参数用json包转换成json格式. response = requests.post(url='XXXX', headers=headers, data=json.dumps(

  • 浅谈python3发送post请求参数为空的情况

    post请求的时候如果不带参数,其实作用就跟get请求一样.我们在做接口测试的时候,发现开发就全部使用的post,get的作用就被这样的post空参数请求给替代了. 在Python代码请求,如下: class HttpHelper(): def __init__(self): '''获取driver对象,和接口ip地址信息,里面的方法大家可以忽略,根据自己的情况来设置 ''' self.dr=Common.driver run_info=Common().get_current_run_conf

  • 微信小程序request请求后台接口php的实例详解

    微信小程序request请求后台接口php的实例详解 后台php接口:http://www.vueyun.com/good/info 没有处理数据,直接返回了,具体再根据返回格式处理 public function getGoodInfo(Request $request) { $goods_datas = $this->Resource->get(); return response()->json(['status' => 'success','code' => 200,

  • Java 发送http请求上传文件功能实例

    废话不多说了,直接给大家贴代码了,具体代码如下所示: package wxapi.WxHelper; import java.io.BufferedReader; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputSt

  • java发送http请求并获取状态码的简单实例

    目前做项目中有一个需求是这样的,需要通过java发送url请求,查看该url是否有效,这时我们可以通过获取状态码来判断. try { URL u = new URL("http://10.1.2.8:8080/fqz/page/qizha/pros_add.jsp"); try { HttpURLConnection uConnection = (HttpURLConnection) u.openConnection(); try { uConnection.connect(); Sy

  • Java如何解决发送Post请求报Stream closed问题

    目录 问题场景 问题分析 解决办法 springboot项目还是ssm等java常用框架都会有这样的问题,解决办法通用 问题场景 前端发送Post请求,前端返回400 Bad Request,后端Controller层接口也没进去,然后我就开始分析,是啥问题,我通过后端控制台发现HttpMessageNotReadableException 提示信息,这个不是读取请求的消息错误发生的异常吗? 然后我通过IDEA 的DEBUG拦截这个异常发生的位置,然后将相关的代码从新走了一遍发现在 Abstra

  • SpringBoot 如何使用RestTemplate发送Post请求

    目录 背景: 1.待访问的API 2.返回对象 3.将发送Post请求的部分封装如下 4.UserInfo对象 5.在Service层封装将要发送的参数 6.在控制器中调用service中的方法,并返回数据 7.测试效果 Spring中有个RestTemplate类用来发送HTTP请求很方便,本文分享一个SpringBoot发送POST请求并接收返回数据的例子. 背景: 用户信息放在8081端口的应用上,8082端口应用通过调用api,传递参数,从8081端口应用的数据库中获取用户的信息. 1.

  • 解决axios发送post请求返回400状态码的问题

    今天在用 axios 发送一个跨域的post请求时,遇到了一个坑:Uncaught (in promise) Error: Request failed with status code 400. 前台代码如下: axios({ method: "post", url: "http://localhost:8080/employee/testpost", data: { username: '234234', password: '4565' } }).then((

  • java发送url请求获取返回值的二种方法

    下面提供二种方法会使用java发送url请求,并获取服务器返回的值 第一种方法: 复制代码 代码如下: import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.NameValuePair;import org.apache.http.client.HttpClient;import org.apache.http.client.entity.UrlEncodedFor

随机推荐