【发布时间】:2015-03-21 04:13:56
【问题描述】:
Google Analytics 的新“核心报告 API”(3.0 版)“建议使用 OAuth 2.0 对请求进行授权”(citation)。但是,它的文档非常不清楚如何做到这一点。 (上面写着“当您创建应用程序时,您向 Google 注册了它”(citation),但是 shell 脚本算作“应用程序”吗??如果是这样,我应该在 the "APIs Console" 注册 bash 脚本,这没有提供任何指导。)使用 Analytics 的 2.3 版,我运行了一个 bash 脚本:
#!/bin/bash
# generates an XML file
googleAuth="$(curl https://www.google.com/accounts/ClientLogin -s \
-d Email=foo \
-d Passwd=bar \
-d accountType=GOOGLE \
-d source=curl-dataFeed-v2 \
-d service=analytics \
| awk /Auth=.*/)"
# ...
feedUri="https://www.google.com/analytics/feeds/data\
?ids=$table\
&start-date=$SD\
&end-date=$ED\
&dimensions=baz\
&metrics=xyzzy\
&prettyprint=true"
# ...
curl $feedUri --silent \
--header "Authorization: GoogleLogin $googleAuth" \
--header "GData-Version: 2" \
| awk # ...
我将如何为新的 Analytics 做这样的事情 - 一个抓取我需要的任何登录令牌并将其发送回的脚本?
(顺便说一句,是的,我意识到结果将是 JSON,而不是 XML。)
【问题讨论】:
-
我不需要上面的整个脚本。事实上,解释会更好(这样我就可以根据需要生成和修改脚本)。
-
如果您有兴趣,我在这里回答了这个问题:groups.google.com/group/google-analytics-data-export-api/…
-
更新:一位同事写了一个 shell 脚本,但这是 AFAIK 他的受版权保护的作品,所以我没有发布它作为答案。
标签: api bash google-analytics oauth-2.0