如何从github中检索大量的pom.xml文件?

时间:2014-02-04 15:09:41

标签: github github-api

我们正在开发一个项目,我们需要大量的Maven项目并从POM文件中收集相关信息。

任何人都可以建议,如何根据此用例检索github项目信息?

1 个答案:

答案 0 :(得分:1)

有两种方法,使用github search api或几次调用其他api(如下所述)。

无论哪种方式,只需查看他们的文档。我查看了他们的文档几分钟,发现了所有这些东西。如果你看的话,它可能会帮助你很多。


首先获取所有公共存储库的名称(docs):

GET /repositories

然后对于每个存储库,您可以获取树(docs):

GET /repos/:owner/:repo/git/trees/:sha

将返回以下内容:

{
  "sha": "9fb037999f264ba9a7fc6274d15fa3ae2ab98312",
  "url": "https://api.github.com/repos/octocat/Hello-World/trees/9fb037999f264ba9a7fc6274d15fa3ae2ab98312",
  "tree": [
    {
      "path": "file.rb",
      "mode": "100644",
      "type": "blob",
      "size": 30,
      "sha": "44b4fc6d56897b048c772eb4087f854f46256132",
      "url": "https://api.github.com/repos/octocat/Hello-World/git/blobs/44b4fc6d56897b048c772eb4087f854f46256132"
    },
    {
      "path": "subdir",
      "mode": "040000",
      "type": "tree",
      "sha": "f484d249c660418515fb01c2b9662073663c242e",
      "url": "https://api.github.com/repos/octocat/Hello-World/git/blobs/f484d249c660418515fb01c2b9662073663c242e"
    },
    {
      "path": "exec_file",
      "mode": "100755",
      "type": "blob",
      "size": 75,
      "sha": "45b983be36b73c0788dc9cbcb76cbb80fc7bb057",
      "url": "https://api.github.com/repos/octocat/Hello-World/git/blobs/45b983be36b73c0788dc9cbcb76cbb80fc7bb057"
    }
  ]
}

然后您可以检查每条路径,看它是否包含pom.xml