深入瞭解 FireFox 四、搜尋引擎

以下將會分為幾個章節來探討這個瀏覽器:

一、常用的附加元件
二、少用的附加元件
三、Plug-in 外掛程式
四、搜尋引擎
五、GreasMonkey 增強網頁功能!
六、免安裝版與精簡 Firefox 來加速啟動
七、userChrome.js 功能的強化
八、userChrome.css & userContent.css 介面的修改
九、火狐的安全
十、編譯版、參數、雜項跟加速
十一、自製皮膚
十二、總結

四、搜尋引擎

不知你是否常用搜尋列搜索呢?
對我而言,以前常常把各式各樣的搜索網站加入我的最愛,要搜索時還要在點擊進入後才能查找。
而現在,有了Add to Search Bar 擴充套件,只要對網站中的搜索框按一下右鍵就能很輕鬆的加到搜索列中!
但太多的搜索列也是難以管理–這時殺手級應用" Organize Search Engines “就能夠快速且直覺得將搜索引擎分類!

我在這裡提供我個人覺得不錯的分類列表,右鍵-另存新檔後將下載的 .xml 檔案放到 C:\Program Files\Mozilla Firefox\searchplugins 重新啟動即可。

我有將在此所介紹的所有搜尋引擎通通打包,請下拉到搜尋引擎編寫上面~

1. 知識、書集:

WikiPedia下載:查資料用的百科全書!                                        
偽基百科下載:查搞笑的答案和不正經的問題用的百科全書  
KomicaWiki下載:查K島中發生的事情的百科全書
mobile01下載:國內討論很多東西的論壇
中文電腦資訊部落格搜索下載:電腦玩物製作的搜尋引擎
雅虎奇摩知識+下載:查報告和笑話的地方
博客來下載:買書的好地方
aNobii下載:線上書架、書評
BBC中文網 下載:看新聞用

2. 圖片

Picsearch下載:搜尋結果最多!
AlltheWeb下載:搜尋的結果挺多的!
Picasa下載:大部分都是私人的圖片性質
ASK 下載:中文搜尋的結果也不多…
jupiterimages下載
雅虎圖片搜尋下載:搜尋結果很多都是不相干的圖
Bing下載:中文搜尋結果最少
nasa-images下載:nasa提供的圖片,不支援中文搜尋
deviantART下載:藝術相關的圖片,不支援中文搜尋
找無名挖挖挖下載:美女

3. 語言

Google翻譯下載:英翻中,也可以直接丟網址進去全頁翻譯
雅虎字典下載:查注音或拼音用
教育部國語辭典下載:查字詞用
Excite日文翻譯下載:日翻中

4. 下載資源

VeryCD下載:驢子的資源大站,有很多好東西
阿榮福利味下載:提供很多免費軟體的下載或介紹
貪婪大陸下載:動漫下載

5. 影片音樂

YouTube下載:很有名
NicoNico動畫下載:日本最大的影音分享網站,須註冊
土豆網下載:對岸的影音分享網站,個人覺得資料量挺多的
六房下載:對岸的影音分享網站,資料比土豆少但兩者不太容易重疊!
搜狗音樂下載:還不錯,可直接下載
KKBox下載:查歌曲或CD名稱比較容易查到…
我愛音樂網下載:資料量挺豐富的
百度MP3下載:搜尋的結果重複性高…也比較容易有錯誤的資料,但可直接下載
ezpeer下載:還不錯的音樂網,但搜尋"演唱者"不知為何結果總是很少
奇虎MP3下載:結果較少但品質較高!

6. 部落格、地圖、拍賣、短網址…

Google地圖下載:越來越多功能了…
UrMap你的地圖網 下載:台灣的地圖資料量高!
Google網誌搜尋 下載
百度博客搜索 下載
百度貼吧 下載:搜尋新聞或討論群組很好用
Twitter下載
Xuite 日誌下載
鄉民低調碼還原下載:低調碼還原
Orz短網址下載:直接貼上網址搜尋就會自動縮網址

這個是將以上介紹的搜尋引擎通通打包 searchplugins ,這個是我個人的分類設定 organize-search-engines
要用的話,只要把 searchplugins 內的東西丟到

C:\Program Files\Mozilla Firefox\searchplugins

重開 Firefox就可以看到出現在搜尋引擎列表中了; 想要和我一樣的分類方式的話把 organize-search-engines.rdf 而放到 profile 資料夾中覆蓋及可(當然要先安裝好 organize search engines,且如此做會覆蓋掉你原先的設定)

搜尋引擎編寫教學

使用Add to Search Bar幾乎可將所有的搜尋框都做成searchplugin,但在此還略略提一下運作原理,當製作失敗時可以研究下是哪方面錯誤,須注意,Firefox對於搜尋框有暫存機制(不知道是否是因為我有裝 organize search engines 的關係),修改內容後也需要修改檔案名稱才會生效;其餘可參考Mozilla Developer Center的技術文件
以下為 Firefox3.5中所用格式

<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
<os:ShortName>引擎名稱</ShortName>
<os:Description>描述</Description>
<os:InputEncoding>編碼類型</InputEncoding>
<os:Image width="16″ height="16″ type="image/x-icon“>data:image/x-icon;base64,imageData</Image>
<UpdateInterval>自動更新時間</UpdateInterval>(非必要)
<UpdateUrl>更新位置</UpdateUrl>(非必要)
<IconUpdateUrl>圖示更新位置</IconUpdateUrl>(非必要)
<SearchForm>搜尋引擎的首頁url</SearchForm>
<os:Url type="application/x-suggestions+json" method="GET" template="取得搜尋建議資料的url“>(非必要)
<os:Url type="text/html" method="送出表單的方法" template="搜尋引擎的url“>
<os:Param name="變數名稱 1" value="變數內容 1“/>

<os:Param name="變數名稱 N" value="變數內容 N“/>
</os:Url>
</SearchPlugin>

〈1〉編碼類型可以從網頁原始碼的 <meta content="text/html; charset=UTF-8″ /> 中確認,偶而簡體的網站必須用 x-gbk 作輸出,否則輸入到搜尋引擎的關鍵字中繁體會變成亂碼。

〈2〉送出表單的方法可以是 GET POST 參考原始碼中的 method="get" ;如果是以 POST method 送出的表單,可將網頁另存並修改原始碼為 GET method 來送出資料,就可以看到的傳送時的原始傳送語法。

〈3〉關於 imgae 的部分, type="image/x-icon" 中的x-icon是搜尋引擎圖示的圖片格式(icon、jpeg、png等), imgaeData 可以是 base64 轉碼過的圖片或是網址 (一般來說在網站的根目錄之下會存有一個 avicon.ico ) 完成後的樣子:

<os:Image height="16″ width="16″ type="image/icon">http://XXXXX.com/favicon.ico</Image>

或是

<os:Image height="16″ width="16″>data:image/png;base64,AAABAAEAEBAAA … DAAA=</Image>

〈4〉template="搜尋引擎的url"的部分,我們需要查看搜索頁面的url來研究,以google搜尋123為例:

http://www.google.com.tw/search?source=ig&hl=zh-TW&rlz=1G1GGLQ_ZH-TWTW266&q=123

可以看到,google的搜尋引擎的url為http://www.google.com.tw/search
?之後就是各種變數與其對應值,變數與變數間用“&"連接,像“hl=zh-TW"是我所在國家,而我們輸入的關鍵字則在q=123這裡!!
接下來,在變數名稱這裡,一般來說是用

<Param name="q" value="{searchTerms}“/>

敘述“變數q=要搜索的關鍵字,也可以不斷的增加所需要的變數和其對應的值
結果,就會變成這樣子

<os:Url type="text/html" method="GET" template="http://www.google.com/search“>

<os:Param name="q" value="{searchTerms}“/>

若url是沒有變數名稱的類型,也可以直接把{searchTerms}放在url中,以Youtube為例:

<os:Url type="text/html" method="GET" template="http://www.youtube.com/results?search_query={searchTerms}“>

若搜尋結果的url中沒有?或對應的關鍵字,那可能是 method=POST的類型,變數就需要去參考網頁原始碼來編寫,以komicaWiki為例:

<os:Url type="text/html" method="POST" template="http://wiki.komica.org/wiki/?cmd=search“>

<os:Param name="word" value="{searchTerms}"/>

<os:Param name="type" value="AND“/>

〈5〉若是有安裝 Organize Search Engines,可在"管理搜尋引擎-點一下搜尋引擎-屬性"中來調整以上所說的參數。

解說完畢!雖然說我已經把大部分常用的搜尋引擎都在這邊提出來了 ,但以下連結有提供很多可以搜尋引擎的建議:

電腦玩物:讓網路搜尋更精準有效,你會把哪些網站加入瀏覽器搜尋列Search Bar?
重灌狂人:32個超好用Firefox 2.0搜尋引擎外掛!
MozTW:Search plugins 列表 此處的列表用的格式已經很舊了(幾乎無法直接安裝)…但很多想不到的搜尋資源可以在這邊看到!!找到需要的用Add to Search Bar自己製作吧!