我能够获取数据并使用API URL打印,下面是我的代码
import re
import json
import warnings
import urllib.request
import csv
warnings.filterwarnings('ignore', message='Unverified HTTPS request')
url = "http://machineXYZ.local:4450/api/35/project/ProjectName01/executions"
headers = {
'Accept': 'application/json',
'X-Rundeck-Auth-Token': '#Tokens here#'
}
response = requests.request("GET", url, headers=headers, verify = False)
#print(response.text.encode('utf8'))
response_value = response.json()
response_value = json.dumps(response_value)
resp = json.loads(response_value)
with open('execute.csv','w') as executeData:
i = resp['executions']
with open('ExecOutput.csv','w') as executeData:
for a in i:
try:
if (a['id']==0):
print("Is empty")
else:
print("Job ID is : " + str(a['id']))
csvWriter = csv.writer(executeData,delimiter=',')
csvWriter.writerow(str(a['id']))
for a in
except KeyError:
print("Job ID: Key error issue, Check input again")
try:
if(a['project']==0):
print("Project data not available")
else:
print("Project Name: "+a['project'])
csvWriter = csv.writer(executeData, delimiter=',')
csvWriter.writerow(a['project'])
except KeyError:
print("Project Name: Key error issue, Check input again")
try:
if(a['name']==null):
print("Job Name not available")
else:
print("JobName: "+a['name'])
csvWriter = csv.writer(executeData)
csvWriter.writerow(str(a['name']))
except KeyError:
print("JobName: key Error check again")
print("\n")
输出是
{
"id": 2,
"href": "http://localhost:4440/api/36/execution/2",
"permalink": "http://localhost:4440/project/ProjectEXAMPLE/execution/show/2",
"status": "succeeded",
"project": "ProjectEXAMPLE",
"executionType": "scheduled",
"user": "admin",
"date-started": {
"unixtime": 1608296400032,
"date": "2020-12-18T13:00:00Z"
},
"date-ended": {
"unixtime": 1608296400374,
"date": "2020-12-18T13:00:00Z"
},
"job": {
"id": "f2a837d2-1a9c-4387-89d7-0243bbfe6ba9",
"averageDuration": 590,
"name": "HelloWorld",
"group": "",
"project": "ProjectEXAMPLE",
"description": "",
"href": "http://localhost:4440/api/36/job/f2a837d2-1a9c-4387-89d7-0243bbfe6ba9",
"permalink": "http://localhost:4440/project/ProjectEXAMPLE/job/show/f2a837d2-1a9c-4387-89d7-0243bbfe6ba9"
},
"description": "echo \"hi\"",
"argstring": null,
"serverUUID": "94ac86b1-56e9-4bc3-9a4c-50cd7c8a5b59",
"successfulNodes": [
"localhost"
]
},
]
}
我捕获的输出如下
Job ID is : 691
项目名称:项目-D 工作名称:关键问题 状态:成功 用户描述:管理员
工作编号:690 项目名称:项目-Y JobName:服务器检查 状态:成功 用户描述:John
工作编号:689 项目名称:项目-D JobName:再次检查密钥错误 状态:成功 用户描述:管理员
你能帮我做些什么吗
提前谢谢
我认为根据您的编码方法,没有必要使用csv模块。使用下面的代码段写出每一行。此外,您还可以为所有响应元素创建一个简单的函数,以简化代码
相关问题 更多 >
编程相关推荐