j0n*_*nes 10 python google-analytics-api oauth-2.0
我想使用Python查询Google AnalyticsAPI以定期从我的Google Analytics帐户下载数据并将数据存储在本地数据库中.我基本上遵循基本教程中给出的步骤.我在此过程中使用了用于Python的Google客户端API库.
到目前为止,当我在我的本地开发机器(Mac)上运行它时,我的脚本运行正常.当我启动脚本时,我的浏览器会打开,系统会提示我从应用程序授予对我的Google 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上班?我有另一种方法在同一台机器上没有本地浏览器进行身份验证吗?
当你使用时FLAGS = gflags.FLAGS,你实际上需要传递命令行参数FLAGS(这可能也可能没有让我绊倒:)).请参阅此处了解以分析为中心的示例,了解如何执行此操作(以下代码,因为链接会在一段时间后消失).一般的想法是将argv参数传递给FLAGS变量,然后变量可供其他模块使用.
# From samples/analytics/sample_utils.py in the google-api-python-client source
def process_flags(argv):
"""Uses the command-line flags to set the logging level.
Args:
argv: List of command line arguments passed to the python script.
"""
# Let the gflags module process the command-line arguments.
try:
argv = FLAGS(argv)
except gflags.FlagsError, e:
print '%s\nUsage: %s ARGS\n%s' % (e, argv[0], FLAGS)
sys.exit(1)
# Set the logging according to the command-line flag.
logging.getLogger().setLevel(getattr(logging, FLAGS.logging_level))
Run Code Online (Sandbox Code Playgroud)
而且,事实证明我们并不孤单!您可以跟踪此错误以查看何时添加文档.
| 归档时间: |
|
| 查看次数: |
7227 次 |
| 最近记录: |