Cha*_*nap 8 search-engine google-api google-custom-search
我需要使用Google自定义搜索API https://developers.google.com/custom-search/v1/overview.从那页开始,它说:
对于CSE用户,API每天免费提供100个搜索查询.如果您需要更多,可以在开发人员控制台中注册以进行结算.额外请求每1000次查询需要花费5美元,每天最多10k次查询.
我已经在开发者控制台内注册了结算信息.但是,我仍然无法检索超过100的结果.我还应该做些什么?https://www.googleapis.com/customsearch/v1?cx=CSE_INSTANCE&key=API_KEY&q=QUERY&start=100
{error:{errors:[{domain:"global",reason:"invalid",message:"Invalid Value"}],代码:400,消息:"Invalid Value"}}
查询:定义
https://support.google.com/customsearch/answer/1361951
来自 Google 网站搜索引擎的任何实际用户查询,包括但不限于使用 XML、iFrame 或自定义搜索元素安装在您网站上的搜索引擎。
这意味着您可能需要发送 11 个查询才能获得 100 多个结果。
GET https://www.googleapis.com/customsearch/v1?&q=QUERY&...&start=1
GET https://www.googleapis.com/customsearch/v1?&q=QUERY&...&start=11
GET https://www.googleapis.com/customsearch/v1?&q=QUERY&...&start=21
GET ...
GET https://www.googleapis.com/customsearch/v1?&q=QUERY&...&start=81
GET https://www.googleapis.com/customsearch/v1?&q=QUERY&...&start=91
GET https://www.googleapis.com/customsearch/v1?&q=QUERY&...&start=101
Run Code Online (Sandbox Code Playgroud)
检查每个响应,如果error code是400,您可以停止 - 可能不需要发送下一个(&start=上一个+10)请求。
现在您可以合并响应并开始构建结果页面。
Google 自定义搜索和 Google Site Search 每个查询最多返回 10 个结果。如果要向用户显示超过 10 个结果,可以发出多个请求(使用 start=0、start=11 ... 参数)并将结果显示在单个页面上。在这种情况下,Google 会将每个请求视为单独的查询,如果您使用 Google Site Search,则每个查询都将计入您的限制。
可能有比我上面描述的更好的方法来做到这一点。(但是,我不确定批处理 API 调用。)
(最后)你的问题的可能答案:我做了很多次测试,但我没有获得start超过 100 次的运气(我得到的结果与你相同 - <Response [400]>)。我正在使用启用计费的项目中的“浏览器密钥”。这可能意味着我们无法使用 CSE API获得第 101、102、103 等结果。
| 归档时间: |
|
| 查看次数: |
5626 次 |
| 最近记录: |