1. 程式人生 > 程式設計 >python3傳送request請求及檢視返回結果例項

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,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請求及檢視返回結果例項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。