如何挖掘网络资源[2]:Google 搜索的基本语法

2013-03-14IT 学习方法

  本系列前一个帖子大致聊了“网站的类型和使用场景”,里面频繁提到搜索引擎的使用。所以,这一篇就来聊一下搜索引擎的话题。


★搜索引擎的选择(为啥不用百度)


  首先,俺简单说一下“搜索引擎的选择”。
  在咱们天朝,Google 屡屡被 GFW 骚扰,导致百度占了便宜,成为份额最高的搜索引擎。不过今天这篇教程,俺还是继续拿 Google 来说事儿。为啥俺不喜欢用百度,主要原因如下:

◇搜索结果的阉割很严重


  这点是众所周知的。
  百度毕竟是在天朝混饭吃的,不得不向朝廷妥协,对搜索结果进行自我审查。假如某个页面符合你的搜索条件,但碰巧包含某个敏感词,那么该页面就不会出现在搜索结果中。
  因此,你用百度搜索,看到通常都是比较“和谐”的内容。久而久之,你就真的以为这世界很和谐(长期用百度搜索,就如同长期看新闻联播)。

◇对洋文的收录不如 Google


  这点是比较显然的,俺就不举例了。
  对于经常上网查(理工类)技术资料的网友,这点也很重要。这方面的网上资源,洋文总是比中文的更丰富。

◇对墙外网站的收录不如 Google


  这点,很多人可能体会不深。俺举个例子。
  刚才测试了一下,分别用 Google 和 百度 搜索 "编程随想" (此处须用半角引号,其作用后面会介绍。为了客观性,俺使用一个干净的浏览器——没登录过任何帐号,清空了 cookie)
  Google 搜到的第一条就是俺博客主站点的首页,而百度搜到的第一条是俺在 CSDN 博客的首页(从2012年春节就没更新了)。除了第一条,其它几条也是 Google 的结果相关度较高,而百度的结果相关性较差。
  考虑到俺博客在墙外,而且俺最近1-2年写的都是敏感的政治内容,转载的大都是墙外网站,外链主要也位于墙外。所以俺猜测,百度对墙外页面的抓取不如 Google 丰富。

  虽然说了 Google 的很多好话,估计有些同学还是会问:Google 已撞墙,咋办捏?
  其实很简单,你只要会翻,墙就成了浮云。俺博客上有很多翻墙教程,而且俺每1~2个月会发一篇“翻墙快报”。翻墙学起来并不难,不要因为翻墙问题而损失了一个很好的搜索引擎
  下面,俺就开始介绍 Google 的各种常用技巧。


★关键词的逻辑关系


  首先说一下关键词的逻辑关系。

◇"与"关系


  当你在搜索框输入多个关键词的时候,默认情况下,这些关键词之间是“与”关系。也就是说,某个页面通常要包含你输入的每一个关键词,才会出现在搜索结果中。

◇"或"关系


  有些时候,你希望使用“或关系”来组合搜索关键词,那么,可以用 OR 语法,格式如下:
关键词1 OR 关键词2

  请注意:
  这里的 OR 一定要【大写】。


★精确搜索


  所谓的精确搜索,就是采用某些特定语法,尽量缩小搜索结果的范围,以提高信噪比(关于信噪比,俺在前一篇解释过)。

◇限定关键词的排列


  比如你直接在搜索框输入不带引号的 编程随想
  那么,搜索到的结果里面,可能会包含这样的网页——在网页的头部出现 编程,在网页的尾部出现 随想,两者相距甚远。这显然不是你想要的。
  如果你想明确告诉搜索引擎,这4个字必须紧挨着,那么,你可以使用引号的语法 "编程随想"

  请注意:
  这里的引号一定要用半角的。

◇限定搜索的网站


  1. 限定具体的网站域名
  有时候,你只想搜索指定网站的内容,可以用 site: 语法。

  举例——只搜索俺博客的内容:
关键词 site:program-think.blogspot.com

  请注意:
  site: 之后的部分,【不】需要写 http:// 或 https://

  2. 限定具体的网站域名及目录名
另外,site: 之后的部分,还可以带目录名
比如俺博客的目录结构是按照年份和月份归档的,如果你想搜索俺博客在这个月的内容,可以用如下语法
关键词 site:program-think.blogspot.com/2013/03

  3. 部分限定域名
  该语法还有如下变形,支持对域名的部分限定。

  举例——只搜索 com 顶级域名:
关键词 site:.com

  举例——只搜索国内的教育网:
关键词 site:.edu.cn

◇限定搜索的网页元素


  你可以指定让 Google 只搜索网页中的特定元素,有如下几种语法:

  1. 只搜索标题
用如下语法,要求 关键词2 必须在标题中,关键词1 可以在任何网页的地方
关键词1 intitle:关键词2
用如下语法,则要求两个关键词都在标题中
allintitle:关键词1 关键词2

  2. 只搜索网页正文
语法同上,使用 intext:allintext: 语法。

  3. 只搜索网页的 URL 网址
语法同上,使用 inurl:allinurl: 语法。
(网页的网址,就是你在浏览器地址栏里面看到的那串)

  4. 只搜索网页中的超链接
语法同上,使用 inanchor:allinanchor: 语法。
(使用此语法,只搜索网页中可以点击的链接的文字)

◇限定文件格式


  可以使用 filetype: 语法告诉 Google 只搜索某些类型的文件格式。
  这个语法用来搜电子书或论文比较方便。比较常用的文件格式有:pdf、doc、rtf、ppt、xls

  举例——搜索 PDF 文件:
关键词 filetype:pdf


★模糊搜索


◇同义词(波浪号)


  紧挨着关键词之前放波浪号 ~ 表示搜索同义词。
  有了这个功能,你就不必用 OR 写一堆关键词。因为 Google 是足够聪明的,知道哪些词汇是近义词。

  举例:
  用如下语法,既可以搜索到包含 food 的网页,也可以搜索到包含 nutrition 的网页
~food

  请注意:
  这里的波浪号一定要用【半角】符号。

◇数字范围(两点)


  在两个数字之间放两个小数点 .. 表示模糊搜索该数字范围。

  举例:
世界杯 2002..2010 

  也可以仅指定一个数字。如下例子表示搜索大于 2002 的数字

  举例:
世界杯 2002..

  请注意:
  这里的小数点一定要用【半角】符号。

◇通配符(星号)


  你可以用星号 * 指代任何一个词汇。使用此语法,通常配合引号,以提高信噪比。

  举例:
  比如“以飨读者”这个成语,第二个字你不知道怎么写,也不知道怎么发音——用输入法写不出来。可以用如下语法搜索,就可以找到该成语的写法。
"以*读者"

  请注意:
  这里的星号一定要用半角的。

  另外,星号也可以配合刚才提到的 site: 语法一起使用。

  举例:
  比如新浪有如下几个域名
sina.com.cn
sina.com.hk
sina.com.tw
  你用如下语法,就可以限定搜索范围在上述几个域名
关键词 site:sina.com.*


★【排除】某些关键词


  紧挨着关键词之前放减号,表示排除该关键词。也就是说,网页如果包含该关键词,就不会出现在搜索结果中。

  举例:
  比如你搜索甲骨文,既找到“考古”方面的页面,也会找到“Oracle 数据库”方面的页面。如果你仅仅想要考古方面的,可以用如下方式排除数据库相关的结果。
甲骨文 -数据库

  请注意:
  这里的减号一定要用【半角】符号。

  这个语法也可以跟前面提到的几个语法(比如 site:filetype:)组合使用。


★括号的使用


  如果你需要混用上述几种语法,就得考虑使用括号——看起来清晰而且不容易搞错不同语法的优先级。

  举例:
关键词1 关键词2 (关键词3 OR 关键词4)


★其它的搜索小技巧


  以下是若干小技巧,平时不经常用。一旦需要,会很方便

◇Google 当词典


  使用如下语法,Google 会给出该单词的注解和音标。
define:某单词

◇Google 当计算器


  有些稍微复杂的表达式(比如带多重括号的),用 Windows 计算器不太方便,你可以让 Google 帮你算。
  只需把数学表达式输入到搜索框,动态提示中就已经告诉你结果了

  举例:
((1+2)*3)^2

  提醒一下:
  表达式中可以使用常见的数学函数(log、ln、sin、cos、等)

◇用 Google 换算汇率


  比如用如下语法,可以计算 100 美元可兑换多少人民币,还配有近期走势图(USD 是美元货币代码,CNY 是人民币货币代码)。
100 USD to CNY

  有些同学会问:去哪找那些货币代码捏?
  没关系,先在搜索框输入上述这串,敲回车;Google 会显示一个界面,上面有换算货币的下拉框,你就可以选世界上的各种外汇。

◇用 Google 换算温度


  这个可能用得不多——貌似天朝很少人用华氏温度。

  举例——摄氏温度转华氏温度:
100 c to f

  举例——华氏温度转摄氏温度:
100 f to c


★结尾


  考虑到篇幅,本文先聊一些基础的搜索语法。本系列的后续博文,俺会继续介绍“搜索关键字该如何选择”。


回到本系列的目录