C#中的Google Custom Search API:分页

时间:2016-11-21 10:23:18

标签: c# asp.net .net google-custom-search

这是我的查询代码。

String query = 'abc';

CustomsearchService customSearchService = new CustomsearchService(new Google.Apis.Services.BaseClientService.Initializer() { ApiKey = apiKey });
   Google.Apis.Customsearch.v1.CseResource.ListRequest listRequest = customSearchService.Cse.List(query);
   listRequest.Cx = searchEngineId;
   search_results = listRequest.Execute();

如何在此处添加过滤等选项? 我搜索了整个互联网和github,但我找不到任何示例代码或适当的文档。

2 个答案:

答案 0 :(得分:1)

我改变了这样的代码并且有效。

    CustomsearchService customSearchService = new CustomsearchService(new Google.Apis.Services.BaseClientService.Initializer() { ApiKey = apiKey });
    Google.Apis.Customsearch.v1.CseResource.ListRequest listRequest = customSearchService.Cse.List(query);
    listRequest.Cx = searchEngineId;
    listRequest.Start = 20;
    listRequest.Num = 5;
    search_results = listRequest.Execute();

但如果listRequest.Start = 100或listRequest.Num = 12

,则会产生错误

答案 1 :(得分:0)

如果问题类似于关于分页的标题,则CseResource.ListRequest listRequest具有属性Start - 您可以指定从哪个结果获取数据(请记住,每个查询只返回10个结果)。

因此,首次在没有Start set的情况下执行它,并且每次执行的子调用都应该增加Start by 10.

如果有其他过滤器 - listRequest也包含FileType,DateRestrict等属性

修改 我正在使用此页面: https://developers.google.com/custom-search/json-api/v1/reference/cse/list