【发布时间】:2016-12-27 02:52:22
【问题描述】:
主要用例是使用 IPython 作为我自己的 Google 帐户的 CLI。我真正追求的是尽量减少启动 IPython shell 和实际对 API 发出有用调用之间的麻烦。
使用 Google API 进行身份验证的文档侧重于设置其他用户将用来访问其数据的应用程序。
这导致了涉及浏览器的冗长 Oauth 舞蹈,以允许其他用户在不损害其凭据的情况下进行身份验证。
但是,我不介意与自己分享我的私人凭据。我不打算分享代码。如果我确实共享了代码,我会使用 dotenv 之类的东西将凭据与代码分开。
Twitter 为开发者提供第二套凭据 这允许开发人员访问他们自己的帐户进行测试。 因此可以以编程方式访问自己的帐户 只需提供一组凭据:允许调用 API 的开发人员凭据和授予对开发人员自己数据的访问权限的其他凭据。对于example:
from twitter import *
t = Twitter(
auth=OAuth(token, token_key, con_secret, con_secret_key))
# Get your "home" timeline
t.statuses.home_timeline()
# Update your status
t.statuses.update(
status="Tweeting from Python")
con_secret* 是开发人员凭据,并且
和token* 是帐户访问凭据。
- 如何使用 Google API 做同样简单的事情?
- 我在哪里可以获得访问自己帐户的凭据?
- 如何在 Google API 中使用它们?
例如,从我自己的一个 Youtube 播放列表中检索内容的最简单过程是什么?
我认为 Python 无头浏览器库可以满足我的需求。我问了一个关于 SE Software Recommendations 的相关问题 https://softwarerecs.stackexchange.com/questions/35744/python-headless-browser-library-for-oauth2-authentication-from-ipython-console
【问题讨论】:
-
有点困惑 - 所以你希望能够在没有 oauth 的情况下使用 API?还是不必每次都输入用户名/密码?
-
@JayIsTooCommon 我想下载一组凭据,一旦将它们存储在本地并使用它们就可以继续使用它们,而不是每次我想登录时都获得新的凭据,这是我理解的 google api 文档要说。据我了解,Twitter 也在使用 Ouath,但允许您通过 dotenv 之类的方式获取自己的用户凭据,继续重复使用它们。我在这里谈论的是用户凭据,而不是您以这种方式重用的开发凭据。
标签: google-api google-oauth google-authentication google-api-python-client headless-browser