嘿,我是 Python 新手,我正在尝试执行以下操作:
我正在使用 Servicenow API 来获取创建票证的日期,并以以下格式返回:
2019-06-06 13:11:39
我正在努力使用 datetime、date、strftime、strptime 等将上面的输出格式化为我可以做数学运算的东西。基本上我需要关闭任何超过 90 天的票,因此可以丢弃上面输出中的时间。我需要:
- 根据当前日期从上面的输出中获取以天为单位的数字年龄。
- 如果该值大于 90,则关闭工单。
以下是我所拥有的一些:
from datetime import datetime, date
today = date.today()
print(today) # Print for debug purposes
#API query omitted.....
getdata = response.json()
for item in getdata["result"]:
print(item["sys_created_on"])
createdstr = datetime(item["sys_created_on"])
created = createdstr.strftime("%Y-%m-%d")
delta = today - date(created)
print(delta.days)
if delta.day > 90:
#close the ticket
....这是输出:
2019-11-07
2019-06-06 13:11:39
Traceback (most recent call last):
File "./getUnapprovedSIDs.py", line 32, in <module>
createdstr = datetime(item["sys_created_on"])
TypeError: an integer is required (got type str)
我意识到看我的代码就像盯着太阳看。任何帮助是极大的赞赏!
谢谢。