如何在 Python 中使用 HTTP 和 HTTPS 代理以及 OAuth2 和请求包?

sma*_*aug 1 python api proxy oauth-2.0 python-requests

我正在requestsPython中使用包来调用一些API。我位于公司防火墙后面,因此我使用代理来访问 API 中的数据。但现在我还需要使用 OAuth2。Requests本身不支持 OAuth2,我们必须使用requests-oauthlib它。但requests-oauthlib没有使用代理的选项(请参阅此处的文档)。

那么,如何同时使用 OAuth2 和代理呢?尽管我更喜欢使用requests包,因为它简单,但任何方法都是受欢迎的。

Sop*_*ert 5

requests-oauthlib 提供的会话对象继承自 requests.Session,因此您可以以proxies与实例化相同的方式指定它们requests.Session()

from requests_oauthlib import OAuth2Session

session = OAuth2Session(...)
session.proxies = {'all': 'http://my.proxy.url:3128'}

session.fetch_token(...)
Run Code Online (Sandbox Code Playgroud)