在jirapythonapi中,如何获得项目中使用的所有标签的列表?

在jirapythonapi中,如何获得项目中使用的所有标签的列表?,jira,jira-rest-api,python-jira,Jira,Jira Rest Api,Python Jira,我正在为Jira使用pythonapi。我想得到一个项目中使用的所有标签的列表。我知道issue.fields.labels只会为我提供一个问题的标签,但我对遍历项目中使用的所有标签感兴趣。找到此项以列出项目中的所有组件 组件=jira.project\u组件(projectID) 我正在寻找类似的东西,但对于标签…标签是一个可能在所有问题上共享的字段,但我认为没有REST API来获取所有标签的列表。因此,您要么编写一个JIRA附加组件来提供这样的资源,要么检索所有有问题的问题并对其进行迭代。

我正在为Jira使用pythonapi。我想得到一个项目中使用的所有标签的列表。我知道issue.fields.labels只会为我提供一个问题的标签,但我对遍历项目中使用的所有标签感兴趣。找到此项以列出项目中的所有组件 组件=jira.project\u组件(projectID)


我正在寻找类似的东西,但对于标签…

标签是一个可能在所有问题上共享的字段,但我认为没有REST API来获取所有标签的列表。因此,您要么编写一个JIRA附加组件来提供这样的资源,要么检索所有有问题的问题并对其进行迭代。您可以通过排除没有标签的问题来简化事情

JQL:project=MYPROJ,标签不为空


并使用jira python library for python3为搜索问题使用“fields”参数限制搜索返回的字段

对于整个项目,您将编写一个循环来迭代项目中的问题,然后将标签附加到列表中

from jira import JIRA
host = "http://<site>.atlassian.net"
jira = JIRA(host,basic_auth=(<user>, <password>))

projectlist = jira.search_issues('project = "Project Name"')
alllabels = []
for ticket in projectlist:
    issue = jira.issue(ticket)
    labels = issue.fields.labels
    for i in labels:
        alllabels.append(i)
从jira导入jira
主机=”http://.atlassian.net"
jira=jira(主机,基本身份=(,))
projectlist=jira.search_问题('project=“project Name”')
所有标签=[]
对于项目列表中的票证:
发行=jira.发行(票)
标签=issue.fields.labels
对于标签中的i:
alllabels.append(i)

如果您只想要唯一的标签,您可以使用集合而不是所有标签的列表。

遗憾的是,我们必须求助于此。感谢优化提示:使用
set
而不是
list
来拥有唯一的条目(
alllabels=set()
)。另外,使用
alllabels.update(labels)
更新集合,而不是遍历所有检索到的
labels
。Jira Python库似乎不提供此功能,但您可能能够。