python - 如何使用 Python API 获取 JIRA 票证的创建和更新状态?
问题描述
我正在尝试从 JIRA 的票证中获取created
和updated
值。
我可以使用以下代码段(URL 和凭据已编辑)来解决问题:
from atlassian import Jira
import pandas as pd
import time
import glob
jira = Jira(
url = "",
username = "",
password = "",
)
projects = ["PR1", "PR2", "PR3"]
FIELDS_OF_INTEREST = ["key", "fields.summary", "fields.status.name"]
timestamp = time.strftime("%Y%m%d-%H%M%S")
csv_folder = "./csvs/"
file_ending = ".csv"
for key in projects:
output = csv_folder + key + timestamp + file_ending
print(f"Currently processing: {key}")
results = jira.jql(f"project = {key}", limit = 1000, fields=["issuetype", "status", "summary"])
df = pd.json_normalize(results["issues"])
df[FIELDS_OF_INTEREST].to_csv(output, index=False)
返回的对象,即使没有FIELDS_OF_INTEREST
应用,也不包含时间戳。要获得我需要传入的时间戳expand=changelog
。但是当我这样做时,我不再得到我正在寻找的相同结构。created
和updated
信息是可用的。
以下片段是我目前正在尝试提取时间戳的片段(URL 和凭据已编辑):
from atlassian import Jira
import pandas as pd
import time
import glob
jira = Jira(
url = "",
username = "",
password = "",
)
projects = ["PR1", "PR2", "PR3"]
for key in projects:
issues = jira.jql(f"project= {key}", limit = 5, expand='changelog')
df = pd.json_normalize(issues)
df.to_csv("changelog.csv", index=False)
我不确定我是否做得对。我很想知道如何提取这些数据点。
我无法在以下位置找到任何示例:https ://github.com/atlassian-api/atlassian-python-api/tree/master/examples/jira或文档中。
任何帮助表示赞赏!
解决方案
您必须进行更多检查才能获得您正在寻找的实际日期和时间戳
最相关的示例可能来自ReportGenerator。
在 JQL 中,created
被添加到fields
列表中,并且更改日志被扩展。请参阅本节。