带有身份验证的 Python 请求 (access_token)

新手上路,请多包涵

我正在尝试将 API 查询放入 python 中。命令行

curl --header "Authorization:access_token myToken" https://website.example/id

给出一些 JSON 输出。 myToken 是一个始终保持不变的十六进制变量。我想从 python 进行这个调用,以便我可以遍历不同的 id 并分析输出。在需要身份验证之前,我已经使用 urllib2 完成了此操作。我还查看了 requests 模块,但不知道该怎么做。

原文由 user1895406 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 707
2 个回答

requests 包有一个非常好的用于 HTTP 请求的 API,添加自定义标头的工作方式如下( 来源:官方文档):

 >>> import requests
>>> response = requests.get(
... 'https://website.example/id', headers={'Authorization': 'access_token myToken'})

如果您不想使用外部依赖项,使用标准库的 urllib2 相同的东西看起来像这样( 来源:缺失的手册):

 >>> import urllib2
>>> response = urllib2.urlopen(
... urllib2.Request('https://website.example/id', headers={'Authorization': 'access_token myToken'})

原文由 wosc 发布,翻译遵循 CC BY-SA 4.0 许可协议

我在尝试使用 Github 令牌时遇到了同样的问题。

唯一对我有用的 Python 3 语法是:

 import requests

myToken = '<token>'
myUrl = '<website>'
head = {'Authorization': 'token {}'.format(myToken)}
response = requests.get(myUrl, headers=head)

原文由 bloodrootfc 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题