必应搜索API并不总是返回相同的结果计数

本文关键字:结果 返回 搜索 API | 更新日期: 2023-09-27 18:15:15

如果我使用bing Webservice进行搜索,并且不指定偏移量和计数,我将收到98个搜索结果。如果我使用偏移量(如下面的代码所示),总计数只有18。

如果我指定了偏移量,总计数不应该是一样的吗?

    BingService soapClient = new BingService();
    SearchRequest request = new SearchRequest();
    request.AppId = ConfigurationManager.AppSettings["BingKey"];
    request.Sources = new BingLiveSearchService.SourceType[] { SourceType.Web };
    request.Query = query;
    request.Web = new BingLiveSearchService.WebRequest { Count = 20, Offset = 21, OffsetSpecified = true, CountSpecified = true };
    string resp = string.Empty;
    var response = soapClient.Search(request);
    if (response.Web != null && response.Web.Total > 0)
    {
        resp += "TOTAL COUNT:" + response.Web.Total + "<br/><br />";
        foreach (var item in response.Web.Results)
        {
            resp += "<div style='padding-bottom:10px;'> + item.Title + "</div>";
        }
    }

必应搜索API并不总是返回相同的结果计数

在API Basics文档中有一些警告:"根据查询的流行程度,估计的结果数量可能与实际数量有很大不同。不要依赖这个数字进行关键计算"。我想知道计数和偏移参数是否使计算时间稍微长一些,因此在收集到许多结果之前暂停了计算?同样值得注意的是,WebRequest。Count属性文档中提到"Count的最小值是1;最大值是50",所以如果你为Count指定一个值,你将得到少于98个结果,你没有指定Count。