如何使用Github eclipse java API获得超过1000个搜索结果

时间:2017-03-08 12:07:52

标签: java eclipse github-api

我试图在https://github.com/eclipse/egit-github/tree/master/org.eclipse.egit.github.core

中使用“searchRepository”方法搜索大量存储库

然而,获得超过1000个结果存在限制

https://developer.github.com/v3/search/#about-the-search-api

因为它会抛出异常“只有前1000个搜索结果可用(422)”(基于下面的代码示例)

解决方案在github search limit results

中提供

我的问题是如何将搜索按日期分割(如线程中所述),或者是否有另一种方法可以使用Java GitHub API。

    int countRepos = 0;
    Map<String, String> searchQuery = new HashMap<String, String>();
    searchQuery.put("language", "java");
    List<SearchRepository> searchRes = null;
    GitHubClient client = new GitHubClient();
    client.setCredentials("xxx", "xxxxx");
    RepositoryService service = new RepositoryService(client);
    for(int page = 1 ; page <12 ; page++){
        try {
            searchRes = service.searchRepositories(searchQuery,page);
        } catch (IOException e) {
            e.printStackTrace();
        }
        for(SearchRepository repo : searchRes){
                System.out.println("Repository"+countRepos+": "+repo.getOwner()+"/"+repo.getName());
                countRepos++;
        }

    }
    System.out.println("Total number of repositories are="+countRepos);

提前致谢。

0 个答案:

没有答案