如何使用 JIRA -REST-API for python 访问下一页

Posted

技术标签:

【中文标题】如何使用 JIRA -REST-API for python 访问下一页【英文标题】:How to access the next page using JIRA -REST-API for python 【发布时间】:2016-02-22 06:33:56 【问题描述】:

我正在尝试获取与项目相关的所有问题。当我执行下面的代码时,我只得到 50 个结果。我需要浏览所有页面并获取所有错误。请帮助

all_issues = jira.search_issues('project=ProjectName')
    each_issue = sorted([issue.key for issue in all_issues])
    for item in each_issue:
        print item

这只给了我 50 个问题,因为该页面的默认值为 50。我需要获取所有问题。

【问题讨论】:

【参考方案1】:

-- 2021 年 10 月 18 日更新

正如在answer below 中发现的那样,将 maxResults 设置为 False 似乎可以消除对结果集的限制。

all_issues = jira.search_issues('project=ProjectName', maxResults=False)

-- 原帖

试试;

all_issues = jira.search_issues('project=ProjectName', maxResults=50, startAt=50)

对来自 REST API 的结果进行分页,默认结果数为 50。您可以提供 startAt 值以从结果集中的某个点开始结果。默认情况下,此值为 0。

因此,您的原始查询将获得 0-49 的结果,上面的查询将获得 50-99 的结果,将 startAt 更改为 100 将获得 100-149,依此类推。

您还可以增加maxResults 的值以在每页返回更多结果。但是,这仅限于您的 JIRA 实例中配置的 jira.search.views.default.max 的最大值(默认设置为 1000)。

不可能在不分页的情况下让 API 返回所有问题。您必须将jira.search.views.default.max 配置为一个非常大的值并将该值提供为maxResults

【讨论】:

非常感谢!它工作得很棒。正如您所说,它将值限制为 1000。我尝试将值设置为“jira.search.views.default.max”。但我得到一个错误'AttributeError:'JIRA'对象没有属性'search''。我想获取大约 10000 个问题。有办法吗? 你在哪里设置 jira.search.views.default.max?这是一个JIRA全局配置,JIRA安装需要在jira-config.properties中设置。 @rakesh:有什么方法可以轻松地对其进行分页吗?我可以预测总共可以退回多少件商品吗? @Lormitto 我猜返回的项目数取决于您为 maxResults 设置的值。 这个答案是不正确的,因为当你改变 startAt 时你总是会做一个新的请求。如果你例如以一种不会出现在搜索中的方式处理问题,您将跳过一些问题【参考方案2】:

根据源码: https://github.com/pycontribs/jira/blob/f5d7dd032e719fe35f5fc377f302200f6c69afd4/jira/client.py#L2737

设置 maxResults=False 应该可以解决问题,因此您的示例如下所示:

all_issues = jira.search_issues('project=ProjectName', maxResults=False)
    each_issue = sorted([issue.key for issue in all_issues])
    for item in each_issue:
        print item

我现在对它进行了短暂的测试,它在这里工作。

【讨论】:

以上是关于如何使用 JIRA -REST-API for python 访问下一页的主要内容,如果未能解决你的问题,请参考以下文章

Windows 下JIRA for MySQL 默认排序报警处理。

在Groovy for Jira中解析日期字符串而不丢失时区

jira中使用eazyBI

Confluence 6 用户目录图例 - 连接 Jira 和 Jira 连接 LDAP

如何使用 JIRA Cloud REST API 创建对 jira 问题的内部评论

JIRA问题数据提取