这两天,在互联网上,百度被爆出了一件事,根据网上的爆料,说百度面向 CEO 搜索。
作为程序员,对于面向对象编程很熟悉,但是,面向老板搜索,我还是第一次听说。
到底是怎么回事呢?
看看网上传的几张图:
那真是情况是这样的吗?
我们可以实测一下哈,比如,我们在后面不加百度厂长 robin 的名字,换成别人的名字,试一试。
比如,我们输入马斯克的名字测试一下,在没有加马斯克的名字之前,结果是这样的:
看截图,我们知道,第一条确实有广告,但是,我们加上马斯克的名字是什么样的呢?
我在 - 后面加上了埃隆马斯克的名字,看看,这也没有广告了,都是新闻页面。
其实,不管你换成谁的名字,广告好像都没有了。
为什么会这样呢?
这并不是面向公司老板的搜索,而是一种搜索技巧。
我记得我在大学的时候,专门学过一门课程,好像是叫:信息情报学,这个信息情报学的课程并不是教你做间谍的,而是教授如何进行信息检索的一门课程。
里面提到了很多搜索技巧。
我举几个例子大家就知道了。
精确搜索
精确搜索,就是搜索的关键字用“ ”(双引号)包含。也叫完整搜索,表示查询词不能被拆分,在搜索结果中必须完整出现。
这对于我们开发人员搜索异常字符串时,非常有用。如果你想要一个没有方差的精确异常,那么这可以剔除掉结果中令你讨厌的部分。
举例说明
“java.lang.NullPointerException”
这样搜索出来的结果是只带有 java.lang.NullPointerException 的网页,而不是分别带有关键词 java,lang,和 NullPointerException 异常的网页。
这样可以让你搜索出来的结果更精确,更能找到符合你结果的搜索内容。
如果不加“ ”(双引号),可能搜索结果只要带有 java,lang,和 NullPointerException 三个关键词当中某一个的网页都会跟着出来,大大增加了自己不需要的信息。
排除搜索
这个排除搜索,就是在想搜索结果中不包含某个词,就在该词的前面加一个 - (减号)。表示所有搜索结果不包含减号后面的词,含有它的网页将被过滤掉。
举例说明,比如,在我们程序员的编程当中,肯定很多不同的编程语言里有很多相同的关键字和词语,比如我是做 Android 开发的,ListView 这个控件,不仅在 Android 中有,在 React Native 中也有,我想搜索的时候,去掉带有 React Native 的 ListView 结果。
方法如下:
ListView -ReactNative
这样就可以去除掉带有 ReactNative 的 ListView 的网页,增加了精确度。过滤掉了某些你不需要的结果。
标题中搜索
什么是标题中搜索呢?表示搜索结果的标题都必须含有intitle:后的查询词,帮助排除无关网页。在查询的关键字前面加上“intitle:”,里面冒号是英文的哈,这样搜索出来的结果中,标题里面必包含查询的关键字。
站内搜索
我感觉这个站内搜索非常有用,我们在看到一个网站或者论坛的时候,里面内容很多,里面的自带的搜索很烂的话,我们其实可以使用像 Google 这样的搜索引擎去搜索。
举例说明
java.lang.UnsatisfiedLinkError site:stackoverflow.com
这样搜索出来的结果都是 stackoverflow.com 网站里的网页。是不是非常牛,非常好用。
文件类型
我们在搜索的时候,是可以指定文件格式的,指定格式用:filetype ,表示搜索特定的文件格式。
举例说明
编程手册 filetype:PDF
这样我们搜索出来的内容就是pdf文件,关于编程手册的。
通过这些技巧,我们反推,为什么在网页中搜索「通下水道 -robin」的时候,广告没有了呢?这可能因为加入了精确搜索的符号,影响了搜索结果排名而已,并不是真的去除了广告或者是面向 CEO 的搜索。
以后,其实,大家在使用搜索引擎的时候,可以装个类似于精确搜索或者过滤广告的的插件,有助于你提供搜索引擎的使用效率。
对此,大家怎么看呢?
禅定时刻
Thinking
新年了,给大家开启一个新的福利,史上最大优惠,给大家一个 50 的优惠券,错过了这次机会,也就真错过了,不会再有 50 这么大的力度优惠了。优惠完之后,我的付费社群「AIGC・掘金成长研习社」绝对值得大家加入。仅剩 10 个名额,先到先得。
大家可以先扫码看看。