我正在尝试构建一个最基本的 python 应用程序,它使用 OAuth2 登录 GitHub 并从那里获取我的用户名 - 使用 requests-oauthlib(这个:https ://requests-oauthlib.readthedocs.io/en/latest/examples/ github.html)。
这是那里的代码:
from requests_oauthlib import OAuth2Session
from flask.json import jsonify
client_id = <my GitHub id>
client_secret = <my GitHub secret>
authorization_base_url = 'https://github.com/login/oauth/authorize'
token_url = 'https://github.com/login/oauth/access_token'
github = OAuth2Session(client_id)
authorization_url, state = github.authorization_url(authorization_base_url)
print('Please go here and authorize,', authorization_url)
redirect_response = input('Paste the full redirect URL here:')
github.fetch_token(token_url, client_secret=client_secret,
authorization_response=redirect_response)
r = github.get('https://api.github.com/user')
print(r.content)
如果我将生成的链接添加到浏览器,按回车键,url 将像一个魅力一样变成一个带有代码和状态参数的 localhost:8080(我在 GitHub 中提供的回调 url)。如果我在我的 python 代码中输入它,我可以获取 GitHub 数据。我的问题是,有什么办法可以自动化吗?比如,跳过用户交互并简单地在 GitHub 中询问凭据,然后在控制台中打印我的数据?谢谢