通过主电子邮件获取github用户名

时间:2017-07-03 14:30:37

标签: python api github github-api pygithub

我正在使用PyGithub库邀请新成员加入该组织。我面临的问题是下一个: 在该方案中,当我只知道用户主电子邮件时,如何检索其用户名以进行相应的邀请? 我知道它可以通过UI,但无法通过API找到相应的调用。 请协助!

3 个答案:

答案 0 :(得分:6)

使用github user search api。我试过下面的一个。

https://api.github.com/search/users?q=solankiarpit1997@gmail.com

密钥名称login是此处的用户名。 响应:

{
  "total_count": 1,
  "incomplete_results": false,
  "items": [
    {
      "login": "arpit1997",
      "id": 10682054,
      "avatar_url": "https://avatars1.githubusercontent.com/u/10682054?v=3",
      "gravatar_id": "",
      "url": "https://api.github.com/users/arpit1997",
      "html_url": "https://github.com/arpit1997",
      "followers_url": "https://api.github.com/users/arpit1997/followers",
      "following_url": "https://api.github.com/users/arpit1997/following{/other_user}",
      "gists_url": "https://api.github.com/users/arpit1997/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/arpit1997/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/arpit1997/subscriptions",
      "organizations_url": "https://api.github.com/users/arpit1997/orgs",
      "repos_url": "https://api.github.com/users/arpit1997/repos",
      "events_url": "https://api.github.com/users/arpit1997/events{/privacy}",
      "received_events_url": "https://api.github.com/users/arpit1997/received_events",
      "type": "User",
      "site_admin": false,
      "score": 52.297474
    }
  ]
}

答案 1 :(得分:1)

PyGithub API

请参阅search_users

  

search_users(query, sort=NotSet, order=NotSet, **qualifiers)

     
      
  • query - string
  •   
  • sort - string('followers','repositories','joined')
  •   
  • order - string('asc','desc')
  •   
  • 限定符 - 关键字dict查询限定符
  •   

例如,

g = github.Github("USERNAME", "PASSWORD")
users = g.search_users("franky in:email")
for user in users:
    print(user.login)  # print the selected users' username.

GitHub API

根据GitHub API Search users,您只能使用关键字in指定通过公共电子邮件进行搜索。

例如,

https://api.github.com/search/users?q=franky+in:email

然后,你只会在电子邮件中找到“franky”的用户。

答案 2 :(得分:0)

我在 github 上有公共电子邮件地址,但无法通过电子邮件地址获取我的用户名

<块引用>

-bash-4.2$ curl -i -s https://api.github.com/search/users?q=kamu.raju@gmail.com HTTP/1.1 200 正常 服务器:GitHub.com 日期:2021 年 5 月 9 日星期日 15:00:13 GMT 内容类型:应用程序/json;字符集=utf-8 缓存控制:无缓存 变化:接受、接受编码、接受、X-Requested-With X-GitHub-Media-Type:github.v3;格式=json Access-Control-Expose-Headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X- RateLimit-Limit、X-RateLimit-Remaining、X-RateLimit-Used、X-RateLimit-Resource、X- RateLimit-Reset、X-OAuth-Scopes、X-Accepted-OAuth-Scopes、X-Poll-Interval、X-GitHub- 媒体类型、弃用、日落 访问控制允许来源:* 严格传输安全:max-age=31536000;包括子域;预载 X-Frame-Options:拒绝 X-Content-Type-Options: nosniff X-XSS-保护:0 Referrer-Policy: origin-when-cross-origin,strict-origin-when-cross-origin 内容安全策略:default-src 'none' X-RateLimit-Limit: 10 X-RateLimit-Remaining:8 X-RateLimit-重置:1620572473 X-RateLimit-Resource:搜索 X-RateLimit-Used: 2 接受范围:字节 内容长度:73 X-GitHub-Request-Id: 8CAA:5135:2353C0C:3D598CC:6097F908

{
"total_count": 0,
"incomplete_results": false,
"items": [

 ]
 }
-bash-4.2$

enter image description here