【问题标题】:Randomly sample Github repositories随机抽样 Github 存储库
【发布时间】:2013-02-24 18:38:23
【问题描述】:

我正在寻找一种从 Github 随机抽样 repos 的解决方案。最终的结果是对样本进行一些数据分析。

我想做的是通过存储库的 id 进行采样:对 0 到 270 万之间的 int 进行采样并找到相关的存储库。获得用户名/repo-name 后,我将使用 api 获取详细信息。

问题是我不知道如何通过 repo id 进行搜索。有什么建议么?我愿意接受网络抓取或 Python 解决方案。

【问题讨论】:

  • 不确定是否有帮助,但您可以通过其余 api 通过 int id 访问用户。然后,您可以通过该随机用户访问任何存储库。

标签: python github random


【解决方案1】:

您可以使用python访问Github V3 Api(如“Most suitable python library for Github API v3”)。

你可以access GitHub repos,从某个id(GET /repositories,作为参数,你看到的最后一个存储库的整数ID:这样可以提供一种迂回的方式来访问带有它们的id的repos。

【讨论】:

  • 我不明白你的解决方案,你介意再扩展一下吗?具体来说,“您看到的最后一个存储库”是什么意思?
  • @Cam.Davidson.Pilon 这意味着它将列出所有以某个id开头的repos。在您的情况下,您只能选择第一个作为根据其 id 访问 repo 的方式。
  • 因此,例如,api.github.com/repositories?ID=50000 应该返回 ID >= 50000。但是(至少对我而言),这个 url 不会这样做。
  • @Cam.Davidson.Pilon 不是?ID=50000,而是?since=50000:那么参数的名称是'since'。见api.github.com/repositories?since=50000
  • @ondra.cifka 7 年后,任何涉及多个存储库的搜索都将由 BigQueries (codelabs.developers.google.com/codelabs/bigquery-github/…) 或可能使用 GraphQL GitHub API v4 (developer.github.com/v4) 完成
猜你喜欢
  • 1970-01-01
  • 2016-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-31
  • 2013-08-17
相关资源
最近更新 更多