python 调用http接口进行数据查询
今天分享一下调用http接口进行数据查询的经验,老规矩,直接上干货。
查询类的接口比上传类的接口要简洁很多哈,不用太多的考虑字段类型了,也不用写变量啥的了,直接传参就行了。
import json
import requests
from sympy.parsing.sympy_parser import null
import time
# 定义调用的url
url = "http://IP:端口/接口名称"
# 定义请求的头部信息
headers = {
"Content-Type": "application/json",
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Connection": "keep-alive"
}
# 定义循环的次数
num_records = 10
# 进入循环
for i in range(num_records):
# 定义发送的消息体数据
message = {
"data": {
"key1": "value1",# 根据所传字符情况,确定是否带引号,如果有list格式的数据,记得正确使用括号。
"key2": "value2",
"key3": "value3"
},
"token": {
"appId": "a039d4b8578aae33",
"timestamp": "1710403054922",
"sign": "7C24",
"token": "OkNNPmi74Qal/yAj8xGRl6cE2EPbcZfyLEO4w6fSLUyG0rnP3kZTLVxecGXiX/94NuT5U+/PQ+rIym1ZQ9HmnlC7lmUWveW2ipMM55UP4V4="
}
}
start_time = time.time() # 记录开始时间
# 发送请求
response = requests.post(url, headers=headers, data=json.dumps(message))
end_time = time.time() # 记录结束时间
response_time = end_time - start_time
# 添加断言
if response.status_code == 200:
# 响应成功时
print(f"第{i + 1}次请求的响应:{response}", "接口响应成功")
print("请求的响应时间为:%.2f秒" % response_time)
# print(response.status_code)
print(response.text)
json_str = response.text
# 使用 json.loads() 函数将 JSON 字符串解析为 Python 对象
data2 = json.loads(json_str)
data3 = data2['data'] # 此处的data根据你的接口返回的字段取值即可
# print(data3)
totalRecord = data3['totalRecord']
print(f"第{i + 1}次请求共查询液位的数据条数为:", totalRecord)
print("---------------------------------------------------------")
else:
# 响应失败时
print("接口响应失败!!", response.status_code, response.text)
团队人员太少了,后面要开始主导做web自动化了,不知道大家现在用的啥技术呢?啥框架呢?没做过web层面的,有点怯生生呀。