是否有一个API可以获得类似于谷歌的结果"人们也会搜索"?

时间:2014-04-12 12:20:27

标签: semantic-web freebase bing-api google-search-api related-content

我正在寻找能够为Google“人们也搜索”功能提供类似结果的API。因此,例如,当我搜索Stanley Kubrik时,我会看到人们搜索的所有其他电影导演。

我知道Freebase API,但它只是提供有关搜索项的信息,而不是与其相关的其他搜索项。

Google AdWords API中还有一个TargetingIdeaSelector工具,可以显示相关的关键字,但这并不是语义上的结果。

最后,有一个非常简单的Bing API that shows related searches(也是here),但是,它再次没有语义范围信息。

您是否知道任何API,或者如果Google的API中有类似的内容会显示我的语义相关搜索?

2 个答案:

答案 0 :(得分:0)

谷歌过去常常提供此类API,但几年后它就被取消了。我不确定为什么会这样,但我的猜测是因为它没有给他们带来任何实际好处,而且可能需要花费很多钱才能维持。根据我的经验,大多数主流搜索引擎往往没有搜索API。

然而,您可以尝试使用PHP和DOM Parser自行解析来自谷歌等地方的结果,并将数据导出为JSON。

可在此处下载http://simplehtmldom.sourceforge.net

这应该从Google中删除所有可以格式化的链接。您可以解析所有数据并可以定位对象,请参阅文档以获取更多信息

  $search = $_GET['search'];
> $google_search = file_get_html('https://www.google.co.uk/?gws_rd=ssl#q=' . $search);
> 
> foreach($google_search->find('a') as $item) {
>       echo $item->href . '<br>';
> }

希望有所帮助

答案 1 :(得分:0)

Google显示的结果基于我猜测的大量数据&#34;搜索Y的X搜索了&#34;,&#34;其他与X相似的人还搜索了什么为Y搜索&#34;等等。此外,可能还有一些依赖Freebase的语义信息。

主动了解Google在其信息框中显示的属性,即为什么当我们搜索法国时,我们会获得一张带有地图,旗帜,资本,人口等的卡片等等。我创建了一个&#34; Knowledge Base Extractor&#34;能够解析Google信息框并使用菲涅耳词汇表将数据公开为RDF。

实施的算法如下:

  • 查询DBpedia以查找至少有一个具有Freebase ID链接的实例的所有概念(类型)
  • 对于这些概念中的每一个,随机选择(n)个实例
  • 对于每个实例,发出Google搜索查询:
  • 如果信息框可用 - &gt;废弃信息框以提取属性
  • 如果没有可用的信息框,请检查Google是否建议&#34;您的意思是......?&#34;如果是这样,遍历链接并寻找信息框
  • 如果没有可用的信息框或更正,则消除搜索查询中使用的概念(类型)并检查是否返回信息框
  • 如果Google建议在信息框中解除歧义,请解析其中的所有链接 - &gt;最好找到哪个建议映射到我们正在使用的当前数据类型 - &gt;检查Freebase - DBpedia映射
  • 每个概念的群集属性

我也抓住了#34;人们搜索&#34;部分,但您可能还想稍微调整一下。

另请注意,您可能需要检查信息框的CSS选择器,因为Google经常更改它们(可能是自动生成的)。这是在options.json

中完成的
"knowledgeBox"                : "#kno-result",
"knowledgeBox_disambiguate"   : ".kp-blk",
"property"                    : "._Nl",
"property_value"              : ".kno-fv",
"label"                       : ".kno-ecr-pt",
"description"                 : ".kno-rdesc",
"type"                        : "._kx",
"images"                      : ".bicc",
"special_property"            : ".kno-sh",
"special_property_value"      : "._Zh",
"special_property_value_link" : "a._dt"