[Google API](5)筛选结果

设置筛选条件

可以根据很多因素来限制 Google 搜索。它们包括语言、内容、国家或地区和主题。您还可以控制输入和输出的编码。

例如,Google 列出了国家或地区代码,允许您根据来源国家或地区限制数据。虽然在分发文件 APIs_Reference.html 上有完整的清单,但是要将搜索限制在包含词组 "science fiction" 的来源为 United Kingdom 的页面上,请设置 restrict 参数:


Google 还指定了信息的四组“特殊分类”:

  • U.S. Government (unclesam)
  • Linux (linux)
  • Macintosh (mac)
  • FreeBSD (bsd)

因此,为了搜索归在 linux 分类的 "science fiction" 页面,请将限制条件设置成:


请注意,主题域并不总是如您所愿的限制结果。例如,实际上在 linux 类中 "science fiction" 有 8710 个结果。


  有筛选条件的搜索结果

这里有一个样本,是在 linux 类中搜索到的 8710 个 "science fiction" 结果页面:





您还可以将限制条件组合在一起,如:



  选择语言

API 还提供了特定的参数限制结果的语言。


Google 能识别以下的语言代码:



  指定编码

对于信息在使用不同编码的环境中来回传输的情况,API 使您可以以指定的方式设定输入和输出语言的编码。例如:


在这种情况下,解释查询字符串 searchTerm 时就好象它是用 greek 编码的一样,以 hebrew 编码的结果将会被送回来。默认的编码方式是 latin1。


  去除成人结果

上网冲浪相当长的时间而没有注意到 Web 上有大量的成人内容是不大可能的。要去除搜索集中的成人结果,请选择安全搜索:


如果 setSafeSearch 被设成 true,Google 就会使用一个检查关键词和词组、URL 和 Open Directory 目录的过滤器。


  去除相关结果

在有许多相似结果的情况下,API 允许您只返回典型页面。例如,如果打开过滤功能,则对于标题和片断极为相似的一组结果,Google 将只返回其中的第一个,而同一 Web 主机上则只返回前两个结果。这样用户不但不会被同一个站点的结果困住,而且还能对那个站点上的可用内容有所了解。

API 允许您使用 setFilter() 方法将过滤功能关闭,但请注意代码样本下面的注意事项。


注意,根据文档,当这个值设为 true 时,过滤功能打开,而当为 false 时则过滤功能关闭。不过,看上去,情况似乎刚好相反,当这个值被设为 true 时则返回相关结果,而当它设为 false 时则排除结果集。

 
上一篇:C# 系统应用之ListView控件 (三).添加ContextMenuStrip右键菜单打开删除文件


下一篇:Maven下载jar包慢,pom报错的解决办法