首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用GitHub GraphQL Api获取按星号排列的前10位javascript/开放源码库

使用GitHub GraphQL Api获取按星号排列的前10位javascript/开放源码库
EN

Stack Overflow用户
提问于 2019-05-22 07:19:03
回答 1查看 433关注 0票数 1

我希望在python项目中使用(以及一些相关信息)对GitHub GraphQL GraphQL存储库进行排名。到目前为止,我有这样的疑问:

代码语言:javascript
复制
query{
  search(type: REPOSITORY, query: "language:javascript", first:10) {
    userCount
    edges {
      node {
        ... on Repository {
          name
          url
          stargazers {
            totalCount
          }
          owner{
            login
          }
        }
      }
    }
  }
}

问题是,它并不总是返回相同的结果:,它将返回10个随机存储库,每个查询按星号排序,而不是绝对的前10位。

最重要的是,我想得到那些开源的。

我使用查询

代码语言:javascript
复制
query{
licenses{name}
}

但是我不知道这是否是一个详尽的列表(似乎缺少了一些许可,比如MIT)。根据医生的说法

返回已知开源许可证的列表。

如何获得许可证的详尽清单,并将其添加到上面的主要查询中,以使我的研究更加精确?

我似乎找不到明确的答案,因为有关GraphQl GitHub api的文档很少,而且相当模糊。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-23 04:57:54

关于结果不一致的原因,我从GitHub支持处得到了部分解释:这是因为查询运行时间太长会导致超时。

对于我们的搜索基础设施来说,执行一些查询在计算上是很昂贵的。为了快速搜索每个人,我们限制了单个查询可以运行的时间。在查询超过时间限制的罕见情况下,搜索返回超时之前找到的所有匹配,并通知您已发生超时。 达到超时并不一定意味着搜索结果是不完整的。这意味着在搜索所有可能的数据之前,查询已经停止。 我们的团队在这里写道: https://help.github.com/articles/troubleshooting-search-queries/#potential-timeouts 在这种情况下,这些超时在分页结果时可能会导致不一致。我们看到了如何在将来的搜索迭代中改进这一点,所以我们已经让我们的团队知道了,尽管我们不能对具体的更改做出任何承诺。

编辑:由支持提供的,添加query: "language:javascript stars:>1600" (1600或多或少是前3000名代表的最低星号,但需要足够大,以缩小搜索范围)将提供一致的前10位回复由明星。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56251307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档