【发布时间】:2012-10-08 23:54:06
【问题描述】:
我想使用 Python 查询 Google Analytics API,以定期从我的 Analytics 帐户下载数据并将数据存储在本地数据库中。我基本上遵循basic tutorial 中给出的步骤。我在这个过程中使用Google client API library for Python。
到目前为止,当我在本地开发机器 (Mac) 上运行脚本时,它运行良好。当我启动脚本时,我的浏览器会打开,并提示我授予从应用程序访问我的 Analytics 数据的权限。之后,我可以根据需要运行我的脚本并访问我的数据。
在我的服务器(Ubuntu,只有终端可用)上,w3m 浏览器打开,但我无法从那里访问我的 Google 帐户。我只能退出w3m 并用Ctrl-C 杀死程序。有如下错误信息:
您的浏览器已打开访问:
https://accounts.google.com/o/oauth2/auth?scope=some_long_url&access_type=offline
如果您的浏览器在另一台机器上,请退出并重新运行 带有命令行参数的应用程序
--noauth_local_webserver
但是,当我使用参数 --noauth_local_webserver 运行脚本时,我得到了相同的结果 - w3m 打开并且我无法进行身份验证。
我怎样才能让--noauth_local_webserver 工作?我是否有另一种方法可以在同一台机器上不使用本地浏览器进行身份验证?
【问题讨论】:
-
我也有类似的问题,但我需要自动化认证过程(我不想每次都“接受”API)。有什么方法可以通过 python 客户端发送登录名/密码,还是我必须破解示例代码并通过 PhantomJS 来完成?
-
phantom js 不是一个坏主意!我也不想每次都接受 API,它破坏了我的自动化。这看起来很有希望:npmjs.com/package/headless-google-auth
标签: python oauth-2.0 google-analytics-api