You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已实现Python调用JIRA获取全部问题,如何仅获取新建问题?

如何用Python的JIRA库仅获取新建问题?

嘿,很高兴看到你已经能成功拉取JIRA项目的问题列表了!要筛选出新建状态的问题,核心是调整JQL查询语句——毕竟JIRA的搜索全靠JQL来精准过滤。

下面给你一步步拆解解决方案:

1. 确认项目里“新建”对应的状态名称

不同JIRA项目的状态命名可能不一样,有的叫「新建」(中文项目),有的叫「Open」「To Do」(英文项目)。你可以:

  • 直接在JIRA网页的高级搜索里试写JQL,找到能匹配新建问题的状态值;
  • 或者用代码先拉取所有状态列表,找到对应项:
    # 临时运行这段代码查看所有状态
    statuses = jira.statuses()
    for status in statuses:
        print(f"状态ID: {status.id}, 状态名称: {status.name}")
    

2. 调整JQL查询语句

把状态条件加入你的JQL,还可以结合时间范围进一步缩小范围(比如只拉最近24小时内新建的):

  • 仅筛选新建状态:project=JA AND status="新建"(把"新建"换成你项目里的实际状态名)
  • 加时间过滤(最近1天内新建):project=JA AND status="新建" AND created >= -1d
    时间参数可以灵活替换:-1w(过去一周)、-2h(过去两小时)、"2024-05-01"(指定日期之后)

3. 修改你的现有代码

把原来的'project=JA'替换成新的JQL即可,完整示例如下:

from jira import JIRA

jira = JIRA(basic_auth=('username', 'password'), options={'server':'https://MY_JIRA.atlassian.net'})
got = 50
total = 0
# 根据你的需求调整JQL
jql_query = 'project=JA AND status="新建" AND created >= -1d'

while got == 50:
    issues = jira.search_issues(jql_query, startAt=total)
    # 这里处理你的新建问题,比如打印关键信息
    for issue in issues:
        print(f"问题Key: {issue.key}, 标题: {issue.fields.summary}, 创建时间: {issue.fields.created}")
    got = len(issues)
    total += got

小提示:如果JQL里的状态名称有空格或特殊字符,记得用双引号包裹起来哦!

内容的提问来源于stack exchange,提问作者PythonP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:35:21