[心得] 將網站轉成Gadget的心得分享

看板Google (谷歌Google)作者 (天涼好個秋)時間18年前 (2007/07/25 05:04), 編輯推噓5(502)
留言7則, 5人參與, 最新討論串1/1
相信現在每個人都需要在網路上查尋資料 字典、捷運、網路拍賣、火車時刻表 但是每查一個東西都需要開一個網頁 穿越過一大堆廣告、不必要的文字或圖片 這時候如果有同樣功能的Gadget用就方便多了 在這裡分享一下我將一些查尋網站轉成gadget的一些程式設計上的心得 ____________________________________________________ 1.適不適合轉成gadget使用? 並不是所有的網站都適合轉成gadget,第一個考慮到的就是版面的問題 因為在iGoogle的用意就是將不同的工具濃縮放在一起 若是某些網站功能,像拍賣網、購物網這種需要很大的版面來顯示圖片 而又沒有辦法精簡,就算精簡了,使用者也用起來綁手綁腳 2.該網頁資料截取的難易度? 將網頁轉成gadget的目的必定是要將我們需要的資料從龐大的HTML中截取出來 然而最困難的步驟,就是在於你必須寫一個程式去讀取別人網頁的source code 若是該source code產生沒有規律性,亂七八糟,這時就要寫一大堆判斷去避開 不需要的資料 3.主要技術 (API部份請參照Gadget Javascript程式庫http://tinyurl.com/yownhp) content type選擇: Gadget的內容有三種類型 html 、 html-inline、URL 將網站放到gadget上最簡單的方法就是使用URL,但是這樣一來我們就沒有辦法把 source code抓出來精簡後再呈現,所以URL只適用於原本就設計成很小的網頁 而這篇文章的重點是要將大版面的網頁轉成小gadget, 因此建議content type使用 html 類型 設計步驟: 如果某些網站若沒有用到特殊的技術,只有簡單的HTML,不用cookie,session 例如 : yahoo字典、縮網址 等等 ,那麼處理起來都是大同小異 不外乎以下這幾個步驟 ------------------------------------------------------------------ A.設計你的Gadget版面 -> B.抓取該原始網頁原始碼 -> C.截取需要的資料 -> D呈現版面 ------------------------------------------------------------------ 最困難的應該在於A和C的步驟 至於B步驟: iGoogle提供的Javascript API中有個function 叫 _IG_FetchContent() 只需要將網站URL丟進去這個function 會幫你把原始碼抓出來 D步驟: 只需要在資料處理完時 用_gel()改掉HTML,show 出結果就好 舉例: yahoo字典 這裡舉一個yahoo字典的例子 當我輸入要查的單字 例如"test" 再按送出 會傳到這個網頁 http://tw.dictionary.yahoo.com/search?ei=UTF-8&p=test 而網址後的test即是我要查的單字 因此這裡可以設個變數去存使用者要查尋的 單字然後再把它和"http://tw.dictionary.yahoo.com/search?ei=UTF-8&p=" 接起來之後再丟進IG_FetchContent()就可以得到查尋結果的source code了 抓到source code後就要做精簡 運用.indexOf() .substring() 取出需要的地方 整理好後再show出來 4.版權問題 小弟在發表這篇文章前想了很久,因為我不清楚這種直接用HTTP get、post截取對方 的web算不算侵權,還是像crawler、搜尋引擎一樣,憑良心看要不要遵守對方的 robot.txt,不過我想無論如何繼然是要用人家的東西,所以千萬還是要尊重一下版權 最少還是要註明一下所有權才是... -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.121.14.35

07/25 05:05, , 1F
遵循 robots.txt的rule囉 XD
07/25 05:05, 1F

07/25 14:01, , 2F
好文推一下
07/25 14:01, 2F

07/25 21:27, , 3F
在iGoogle目錄搜尋一個叫做GadgetMaker (webclip)的小工具
07/25 21:27, 3F

07/25 21:27, , 4F
可以直接把網頁中喜歡的地方剪出來當作 Gadget
07/25 21:27, 4F

07/26 17:53, , 5F
嗯..GadgetMaker不錯用 但只能剪出Web中某個block
07/26 17:53, 5F

07/26 17:54, , 6F
如果資料分散在網頁各部 就沒有辦法依照自己想法排囉
07/26 17:54, 6F

07/27 12:50, , 7F
感謝樓樓樓上XD,我剛剛試用了覺得蠻不錯的
07/27 12:50, 7F
文章代碼(AID): #16fcblgr (Google)
文章代碼(AID): #16fcblgr (Google)