Google趋势API调用中令牌的来源

时间:2017-02-18 16:09:52

标签: http get google-api

当我从Google趋势查询(例如here)下载CSV时,我看到了一个HTTP GET请求

https://www.google.com/trends/api/widgetdata/multiline/csv

与params

req:{"time":"2012-02-18 2017-02-18","resolution":"WEEK","locale":"en-GB","comparisonItem":[{"geo":{},"complexKeywordsRestriction":{"keyword":[{"type":"BROAD","value":"trump"}]}}],"requestOptions":{"property":"","backend":"IZG","category":0}}
token:APP6_UEAAAAAWKm9N57FxjXrnfxhxhe5SEax6DyR97sY
tz:-120

req和tz参数有意义,但我不确定如何生成令牌。有人可以向我解释这是从哪里来的吗?我是否需要使用oauth2包来创建这些令牌?

1 个答案:

答案 0 :(得分:3)

为结果小部件生成此标记,每个小部件都有自己的标记。

此令牌来自何处?

当页面https://trends.google.com/trends/explore?q=trump打开时,会向https://trends.google.com/trends/api/explore发送一个Ajax GET请求,其中包含查询参数: enter image description here

在此Ajax请求的响应中,有一个widgets字段,其中包含所有结果窗口小部件数据。每个小部件都有一个唯一的令牌:enter image description here

当触发下载CSV 操作时(在特定小部件上,GET请求https://trends.google.com/trends/api/widgetdata/multiline/csv),该小部件的token信息将被提取并作为查询参数:enter image description here

请注意响应中的令牌和下载csv请求中的令牌是相同的(对于相同的小部件)。

如何生成令牌?

理论上,所有随机和唯一的字符串都可以用作令牌来保护小部件。谷歌可能有自己的算法。