程序員該如何使用搜索引擎?

作為專業技術人員,程序員在使用搜索引擎時,是不是有和普通網民不一樣的思路和技巧呢?


1、雙引號
把搜索詞放在雙引號中「」代表完全匹配搜索,也就是說搜索結果返回的頁面包含雙引號中出現的所有的詞連順序也必須完全匹配。百度和Google都支持這個指令。例如搜索"九江生活論壇"
2、減號 減號代表搜索不包含減號後面的詞的頁面。使用這個指令時減號前面必須是空格減號後面沒有空格,緊跟著需要排除的詞。Google和百度都支持這個指令。例如搜索-引擎返回的則是包含"搜索"這個詞卻不包含"引擎"這個詞的結果
3、星號
星號*是常用的通配符,也可以用在搜索中。百度不支持*號搜索指令。比如在Google中搜索搜索*擎其中的*號代表任何文字。返回的結果就不僅包含"搜索引擎"還包含了"搜索收擎""搜索巨擎"等內容。
4、inurl inurl指令用於搜索查詢詞出現在url中的頁面。百度和Google都支持inurl指令。inurl指令支持中文和英文。比如搜索「inurl」搜索引擎優化返回的結果都是網址url中包含"搜索引擎優化"的頁。由於關鍵詞出現在url中對排名有一定影響;使用inurl搜索可以更準確地找到競爭對手。
5、inanchor inanchor:指令返回的結果是導入鏈接錨文字中包含搜索詞的頁面。百度不支持inanchor。比如在Google搜索inanchor點擊這裡返回的結果頁面本身並不一定包含"點擊這裡"這四個字而是指向這些頁面的鏈接錨文字中出現了"點擊這裡"這四個字。可以用來找到某個關鍵詞的競爭對收;而且這些競爭對手往往是做過SEO的。研究競爭對手頁面有哪些外部鏈接就可以找到很多鏈接資源。
6、intitle intitle指令返回的是頁面title中包含關鍵詞的頁面。Google和百度都支持intitle指令。使用intitle指令找到的文件是更準確的競爭頁面。如果關鍵詞只出現在頁面可見文字中,而沒有出現在title中大部分情況是並沒有針對關鍵詞進行優化所以也不是有力的競爭對手。
7、allintitle allintitle搜索返回的是頁面標題中包含多組關鍵詞的文件。
9、filetype 用於搜索特定文件格式。Google和百度都支持filetype指令。比如搜索filetype:"DOC"SEO返回的就是包含SEO這個關鍵詞的所有doc文件。
10、site site是SEO最熟悉的高級搜索指令;用來搜索某個域名下的所
有文件。
11、linkdomain linkdomain指令只適用於雅虎返回的是某個域名的反向鏈接。雅虎的反向鏈接數據還比較準確是SEO人員研究競爭對手外部鏈接情況的重要工具之一。比如搜索
linkdomain:hzaima.com-site:http://hzaima.com得到的就是大明seo的外部鏈接因為-sitehttp://hzaima.com已經排除了點石本身的頁面,也就是內部鏈接;剩下的就都是外部鏈接了。
12、related related指令只適用於Google,返回的結果是與某個網站有關聯的頁面。比如搜索
related:http://hzaima.com我們就可以得到Google所認為的與大明seo有關聯的其他頁面。這種關聯到底指的是什麼Google並沒有明確說明一般認為指的是有共同外部鏈接的網站。

自己去搜索:搜索引擎命令


如果你是一個剛剛成為或者想要成為程序員的人,首先你應當認識到:


正確地使用搜索引擎是學習編程的必備技能


一些搜索引擎使用技巧和意識:


用 google 作為你的默認搜索引擎

google 是目前這個星球上最好用的搜索引擎,沒有之一。按理說,在開放的互聯網上,有一個最好用的產品,你沒有理由不去用它,而要勉強於其他拙劣的替代產品。然而因為一些眾所周知的不宜在公開場合討論的原因,你可能不得不選擇一些名聲不那麼好的搜索引擎。


所以,如果你立志成為一名程序員,那麼為了更好地get「搜索」這項必備技能,首先還得獲取另一項不宜在公開場合討論的技能。這就不是我們今天要討論的了。


選擇合適的搜索關鍵詞


提出一個好問題,本身就對解決這個問題起了很大的幫助。選擇搜索關鍵詞也是一樣。如果你只是用「我安裝python為什麼不成功」、「運行python的時候報錯」這樣空泛的大白話去搜索,天知道這要怎麼解決……

  • 用關鍵詞,而不是整個句子

雖然現在的搜索引擎已經在語義分析和分詞上做得相當成熟了,但還是建議用關鍵詞來描述你的問題,這樣可以使你的問題更加具體和精準。通常,用空格分割的1~3個關鍵詞,可以比較得到比較好的搜索結果。

  • 直接使用報錯信息搜索

如果你是在為你的程序無法運行而尋找解決方案,那麼直接使用報錯提示信息進行搜索是最好的選擇。一般來說,代碼異常,都會輸出異常的類型和位置,而應用軟體的錯誤甚至還會提供對應的錯誤碼,以便於定位和解決問題。用這些信息去搜索,比你用自然語言描述錯誤現象要精準幾百倍。

  • 添加範圍限定的關鍵詞,縮小搜索範圍

比如你要搜索python相關的一個問題,那麼在你的關鍵詞里加上python會好過直接搜索你的具體問題。比如你想了解Requests模塊的具體用法,如果不加上python,則很難找到你要的信息。更進一步,如果你清楚你的問題是django方面的,那麼直接加上django關鍵字會比加python更有效。但要注意,你得分清你的問題屬於哪個範圍。如果是因為你的資料庫和你操作系統不兼容而導致的問題,你卻一直用python關鍵字進行搜索,那就跑偏了。

  • 避免引入歧義

有的時候,你會發現你搜索的關鍵詞會導向一個被熱議的問題,但你確信這個問題並不是你想要的。這時候寧可放棄這個會導致歧義的關鍵詞。當然還有另外的解決方法,稍後我會提到。


還有時候,歧義是因為你錯誤的推測而帶來,比如上個例子中的「python」導致查不到資料庫的問題。所以在搜索過程中,你需要根據情況調整你的關鍵詞。

  • 逐步修正關鍵詞

複雜的問題往往無法一蹴而就地解決。搜索的過程也是一個反覆思考的過程,需要通過已有的結果推斷和修正,最終達到目標。


分辨搜索結果的質量


最近一段時間,國內某知名搜索引擎被眾人口誅筆伐,對於搜索結果的排名和誤導也是其中一條罪狀。雖然搜索編程相關的資料不太至於讓你上當受騙,但搜索結果的質量還是有可能影響到你的學習。可能你下載到的軟體不是官方正版,而是被植入了木馬病毒的版本。也可能你輕信了投放推廣的培訓機構,去上了一個糟糕的培訓課程。更多的情況是,搜索出的結果里,有很多無效的、重複的甚至錯誤的內容,耽誤你的時間,誤導你的方向。


鑒於此,如果你無法選擇更好的搜索引擎,那我只能建議你,認真分辨搜索結果的質量。要對搜索結果保持懷疑的態度,不要只迷信排名靠前的結果,它們可能是推廣(注意點看,一般搜索引擎都有標註),也可能是做過一些排名優化,或者僅僅是運氣好排到了前面。下載軟體包盡量去官方的網站,查閱資料盡量選擇官方的文檔。另外,獨立技術博客的質量要高於那種掛滿小廣告的資源站。


對於編程方面的問題來說,還有種選擇是直接去相關的網站進行搜索。這裡強烈推薦又一個程序員的必備工具:StackOverflow。多次有人問我,英語不好能不能編程。我的回答是,可以,但你會錯過很多好東西。比如這時候,你就只能去用中文同類網站。有個SegmentFault屬於國內做得不錯的,但在內容上肯定無法與StackOverflow相提並論。


另外,知乎也是個可以搜索問題的去處,但一般是偏向評價性質的問題,而非具體的技術問題。

搜索引擎的高級技巧


大多數搜索引擎,除了直接搜索關鍵字,都還會提供一些高級功能,常用的包括:

  • 站內搜索 site

示例:在搜索框中搜索

python site:http://zhihu.com

就可以把搜索結果限定在知乎內。對於一些沒有站內搜索或站內搜索不好的網站來說很有用。

  • 完全匹配 ""(雙引號)

示例:在搜索框中搜索

"matching query does not exist"

可以得到精確匹配這段文字的結果,而不是把它們當做多個關鍵詞來搜索。

  • 去除結果 -(減號)

示例:在搜索框中搜索

django -unchained

單純搜索django,會得到一部分同名電影《Django Unchained》的結果。通過減號可以去除包含unchained的結果。注意減號前面必須有空格,後面必須沒空格。

  • 文件類型 filetype

示例:在搜索框中搜索

python filetype:pdf

得到的結果都是pdf類型的。這對於搜索文檔或者ppt很有幫助。


百度現在將時間、文件類型、站點三項過濾加在了搜索結果的上方,這點我覺得還是不錯的,畢竟大多數人不會像程序員一樣習慣使用代碼和符號語言。


最後,對於需要寫論文的同學來說,還有個不能不去的地方就是

http://scholar.google.com

同樣,如果你又沒法好好使用它,要找替代品。那我真心不想告訴你還有個

http://xueshu.baidu.com

因為我試過了,這上面連我自己的論文都搜不到!


推薦使用goolge,用不了google, 也可以嘗試微軟必應搜索; Ask.com 都可以。用百度也可以。
一些小技巧:(粗體為了提醒)
1. file type: 比如file type:PDF 搜索PDF格式的信息, file type: doc 搜索word的,以此類推。
2. 站內搜索 site:http://xxx.com 以此定位於某個網站搜索,注意網站名稱前不用加www,冒號是英文的。
3. 前兩個結合起來。site:http://xxx.com filetype:pdf
4. 如果想搜所有相關的,可以 related:http://xxx.com
5. 還可以用link:http://xxx.com 或者info:http://xxx.com
6. 使用 「」 精確匹配搜索,如在百度中鍵入「互聯網科技」,表示搜索「互聯網科技」五個必須聯在一起的,如果不加 「」,搜到的為互聯網及科技兩個詞並列顯示結果,沒有這麼精確匹配。
7. 使用intitle限制性的網頁搜索,如鍵入「intitie:互聯網」,限定於搜索標題中含有「大數據」網頁,如果輸入「intitie:互聯網 科技」限定於搜索標題中含有「大數據」和「市場規模」的網頁。
8. 減號 - 排除不需要的信息,減號之前有空格。A -B
9. 同義詞搜索~ 如A ~B
10. 時間段搜索 如果想要找出 1910 至 1950 年間的美國總統,直接在搜索引擎中輸入 美國總統 1910.. 1950 即可得出想要的結果。記住,數值之間的符號是兩個英文句號加一個空格鍵
11. google directory
12. google linux search用來搜索大量與Linux相關的網站 其中的linux可以替換。

有太多的小技巧了,就先寫這些,不過記起來太費勁了。(逃


別怕英文不好不敢用Google,你輸到一半的單詞它會給你補完的。學會用英文描述問題、閱讀英文資料。當你開始逃離百度的時候,就邁出了正確使用搜索引擎的第一步了。然後,很輕鬆的,做到這些:

  • 如何用好 Google 等搜索引擎? - 崔凱的回答
  • 如何用好 Google 等搜索引擎? - 曾少賢的回答

打開搜索引擎頁面-&>搜索關鍵字-&>找到鏈接-&>進入網站」這種方式訪問是十分不應該的,直接輸入網址嫌麻煩,至少可以使用收藏夾的,很多瀏覽器都提供了收藏夾同步功能。確實很多瀏覽器都提供了此功能,但是用戶體驗怎麼樣呢?試想如果我們不用走這樣繁複的步驟流程,也不用收藏夾,就能輕鬆找到我們的網站。你有什麼想法,我個人比較熱愛心理學,所以對心理學網站情有獨鍾,但懶得去記住很多網址,收藏夾也不是很簡便,直到我建立了自己的專屬心理網址導航,感覺直觀、大氣多了,這個網站先不說能不能讓更多的人知道,但對我自己的便捷程度是絕對的。這個個性化網址導航是免費建的,而且就算你不是懂技術的程序員,你也能通過它的可視化編輯額完成自己的心愿,為了避免打廣告,我就不直接說平台名字了,想知道的各大知友,可以留言問我,看到後必會回復。


============================= Update =============================
1. 搜索引擎大全 - 國內國外搜索引擎大全、資訊和使用技巧
2. List of search engines
3. The Search Engine List
4. The 10 Most Useful Search Engines for Beginners, 2015
……
For more info, use SEARCH ENGINE! :)
有幾個同學提到網址導航,對我來說,沒有顯式的導航(Google 和 Bing 首頁木有導航);至於 xxx123 之類的導航網站,除了 IE 首頁老是被強改,幾乎沒用過。覺得有必要的,放到收藏夾,然後在地址欄輸入關鍵詞,收藏夾有匹配的會顯示出來,可供選擇:

============================= 原來的答案 =============================
我覺得不管誰用搜索引擎,最主要的是選擇合適的搜索引擎和準確的搜索詞,這樣才有可能用較低的成本獲得自己想要的結果。
就個人而言,首選 Google,備用 Bing,搜索的時候會用到一些搜索命令,比如 filetype, inurl, site …
P.S. 對程序員來說,艸大部分 bug,有 StackOverflow 就夠了,前幾條結果沒有 StackOverflow 會心慌,Google 第一頁沒結果就要絕望了。


用谷歌,用英文


能分辨廣告,能忍住不點八卦熱搜之類的一般能力就不說了。
程序員使用搜索引擎多半是查找技術參考的,此時能合理的提煉關鍵詞是非常有意義的事情,能夠大大提高搜索結果的質量。
關鍵詞提煉的好就像在論壇里問題提到好一樣,都能更好的獲取答案。現在幾乎沒有不使用搜索引擎查找技術參考的程序員,除非是公司不讓上網。關鍵詞提煉的好一定程度上反應的程序員的技術能力。
另外一個程序員對域名、網址、域名劫持等技術概念應該比普通用戶了解的更深入,對瀏覽器的使用也應該更高層次一些。不能像普通用戶一樣,連輸入域名訪問網站都不會,只能通過強加的導航主頁上的搜索框訪問網站。
此外程序員對所謂的流氓行為應該更加反感,對效率更加有追求。所以對於一些經常訪問的網站,仍然通過「打開搜索引擎頁面-&>搜索關鍵字-&>找到鏈接-&>進入網站」這種方式訪問是十分不應該的,直接輸入網址嫌麻煩,至少可以使用收藏夾的,很多瀏覽器都提供了收藏夾同步功能。


Google。啥?翻不了牆?連牆都不會翻 當啥程序員~


前段時間vpn抽風,想到自己有個n年前註冊的域名,自己擼了一個搜索引擎,走投無路的時候可以將就用一下 碼龍搜索:http://www.coderlong.com/


動作片


1、只用 google(我覺得即使是日常生活類搜索,google也比某度好用太多太多,比bing好用很多)
2、人工分詞,去掉非關鍵連接詞
3、善用 site: 等指令


網上非常多使用技巧,總結的也非常好了,想了想不做搬運工。只提兩個對我來說非常有用的技巧:
site:指令。 幫你在指定網站內搜索。
正則表達式。這個利器就不用多說了,程序員的必備技能。
就這樣。


推薦閱讀:

當你發現一種不認識的植物或動物時,想了解詳情怎麼去網上搜索查詢?
心理學專業可以用什麼搜索引擎搜文獻和資料?

TAG:程序員 | 產品體驗 | 程序員修養 | 搜索引擎 | 使用技巧 |