我试图在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);
提前致谢。