时间:2020-07-13 python教程 查看: 1292
我就废话不多说了,大家还是直接看代码吧!
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请求及查看返回结果实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持python博客。