【问题标题】:Different results using Bing.com and Bing Search API使用 Bing.com 和 Bing Search API 的不同结果
【发布时间】:2023-03-24 14:55:01
【问题描述】:

我正在使用 Bing Search API 2.0 (XML) 和 PHP 来检索结果。
但是在运行某些查询时,API 不会返回 Bing.com 的(相同)结果。

当我发送这个请求时:(这是使用 API)

http://api.search.live.net/xml.aspx?Appid=__________&query=3+ts+site%3Amycharity.ie/charity&sources=web&web.count=10&web.offset=0

我得到 0 个结果。

但如果我去 Bing.com 并搜索培根,则 URL 将是:

http://www.bing.com/search?q=bacon&go=&form=QBRE&filt=all&qs=n&sk=&sc=8-5

所以如果我把我的 API 查询替换成这个 URL,如下所示:

http://www.bing.com/search?q=3+ts+site%3Amycharity.ie/charity&go=&form=QBRE&filt=all&qs=n&sk=&sc=8-5

我应该再次得到 0 个结果,对吧?

不,我得到 1 个结果。 (我使用 API 寻找的结果)。
为什么是这样?反正有这个吗?

【问题讨论】:

  • 赞成类似问题。我也看到了完全相同的东西,也看到了类似的站点特定查询。我已经问过这个问题,并不断收到来自 bing.com 的人们的回复:“这是不可能的,因为它们都使用相同的代码库。”
  • 我遇到了同样的问题。使用 API 我经常错过第一个结果。有人有解决方案吗?它应该与我们使用的 API 版本有关。检查此网站:azbul.net 他们也使用 bing,但结果与 bing.com 上的相同。哈兰
  • 我有一个类似的问题,即 Api 与 Bing.com 之间的搜索结果不一样。 Api 不会返回尽可能多的结果,它会返回 Bing.com 没有的项目。我在 Bing 社区中找到了以下论坛帖子。也许有一天其中一个会得到答案并解决问题。 Bing API Forum Post
  • Bing 刚刚发布了一条一般信息,即他们修复了 API 2.0、搜索 API。它不是真正的特定的,但您可能想看看:bing.com/community/developer/f/12254/t/671908.aspx
  • 2017 年同样如此! :(

标签: php xml api search bing


【解决方案1】:

是的,由于这个事实,Bing API 完全脑死了,完全没用。

但是,幸运的是,屏幕抓取是微不足道的:

<?

function searchBing($search_term)
{       
    $html = file_get_contents("http://www.bing.com/search?q=".urlencode($search_term)."&go=&qs=n&sk=&sc=8-20&first=$start&FORM=QBLH");

    $doc = new DOMDocument();
    @$doc->loadHtml($html);
    $x = new DOMXpath($doc);

    $output = array();

    // just grab the urls for now
    foreach ($x->query("//div[@class='sb_tlst']//a") as $node)          
    {

        $output[] = $node->getAttribute("href");

    }
    return $output;
}

print_r(searchBing("bacon"));

【讨论】:

  • 这段代码就像一个魅力......但是我无法成功获得//*[@id='count']的结果计数......我将不胜感激=)
【解决方案2】:

看起来 API 请求实际上不是在请求信息。嗯,是的,但不完全是。例子; 从必应搜索; "search?q=bacon&go=&form" 请注意其中的单词 bacon。 这似乎没有在 API 请求中以任何方式解析。甚至不是十六进制值。我相信这就是问题所在。

【讨论】:

  • 错了。在我使用 Bing.com 的示例中,我说 if I go to Bing.com and search for bacon the URL would be,即只需在文本字段中输入“bacon”并单击搜索。然后http://www.bing.com/search?q=bacon&amp;go=&amp;form=QBRE&amp;filt=all&amp;qs=n&amp;sk=&amp;sc=8-5 的 URL 是 Bing.com 发回给我的 URL。
【解决方案3】:

也许有一个问题,现在已经解决了......

目前,如果我正在尝试以下查询 made according to the Bing API 2.0 MSDN 它们都返回相同的单个结果:

http://www.bing.com/search?q=3+ts+site%3Amycharity.ie/charity&go=&form=QBRE&filt=all&qs=n&sk=&sc=8-5

http://api.bing.net/xml.aspx?Appid=______7&query=3+ts+site%3Amycharity.ie/charity&sources=web

http://api.bing.net/json.aspx?Appid=_______&query=3+ts+site%3Amycharity.ie/charity&sources=web

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-06
    • 1970-01-01
    • 1970-01-01
    • 2018-05-07
    • 1970-01-01
    • 2018-08-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多