我可以使用GraphQL列出Github的公共存储库吗?

时间:2018-01-13 22:39:40

标签: github graphql github-api github-graphql

我正在尝试使用 GraphQL 列出Github中的公共存储库,因为它允许我准确选择我想要的import pyodbc conn = pyodbc.connect(DRIVER='{SQL Server}', Server='server_name', Database='Database_name', trusted_connection='yes') cur = conn.cursor() cur.execute("""BULK INSERT table_name FROM 'C:\\Users\\folders path\\new_file_name.csv' WITH ( CODEPAGE = 'ACP', FIRSTROW = 2, FIELDTERMINATOR = ',', ROWTERMINATOR = '\n' )""") conn.commit() cur.close() conn.close() 中的哪些信息。

使用 REST 我可以通过向import os os.remove('new_file_name.csv') 发出请求来列出公共存储库。这没关系,但响应中附带了一些我不需要的东西。所以,我想知道我是否可以使用 GraphQL 来完成同样的工作。

问题是,我无法找到任何可以使用 GraphQL 列出公共存储库的高级存储库Object。对我来说,似乎我只能使用 GraphQL 来列出来自组织或用户的存储库。例如,像这样:

https://api.github.com/repositories

那么,我如何使用(如果有的话)Github的GraphQL端点来列出Github的公共存储库?

我也尝试使用Object在这一行,但我怀疑Github只有54260个存储库,因为query{ user(login: "someuser"){ repositories(first: 50){ nodes{ name } pageInfo{ hasNextPage } } } } 变量返回了我。

search

1 个答案:

答案 0 :(得分:3)

您可以在搜索查询中使用is:public

{
  search(query: "is:public", type: REPOSITORY, first: 50) {
    repositoryCount
    pageInfo {
      endCursor
      startCursor
    }
    edges {
      node {
        ... on Repository {
          name
        }
      }
    }
  }
}

Try it in the explorer