關(guān)于gank.io
這是一個干貨分享的網(wǎng)站窄坦,組織者是@代碼家,是Android開發(fā)好手春瞬,據(jù)他自己說后端也很強柴信。網(wǎng)站后臺使用Node.js搭建的,使用了DaoCloud宽气。
網(wǎng)站宗旨想必就是header中的:每日分享妹子圖 和 技術(shù)干貨随常,還有供大家中午休息的休閑視頻潜沦。(呵呵呵)然后干貨的主要內(nèi)容是移動開發(fā)中的Android和IOS干貨,包括各種小技巧绪氛、開源代碼唆鸡、相關(guān)技術(shù)、新聞信息等等枣察。不對争占,我說錯了,干貨的主要內(nèi)容應(yīng)該是每頁開頭的妹紙妹紙妹紙(重要的事情要說三遍)和有時候會喪心病狂的休閑視頻序目。
總之干貨很干臂痕。
為什么要爬
說來也不知怎么說,就是想爬吧猿涨。仔細(xì)再想的話握童,可能一來gank.io網(wǎng)站并未對內(nèi)容進行歸檔和整理,就像一本書叛赚,但是沒目錄澡绩。具體情況點進去看就知道了。不過@代碼家說了之后會升級的红伦。二來的當(dāng)時閑著也是閑著躲因,想自己做點好玩感覺有意思的事情拱她,順便看看自己做不做得出來昧港。有點夏天想吃西瓜竭讳,買西瓜子來種的意味。
結(jié)果分享展示
這是爬取的結(jié)果:存儲在七牛云
這是爬取的托管代碼:github
爬取過程介紹
爬取目的
將所有gank.io整合到一個html文件蛮浑,并顯示歸檔目錄唠叛。
爬取語言
Java,引用jsoup包沮稚。但實際上沒使用好艺沼,更多的是字符處理了。
爬取思路
- 制作空html文件rawGet.html蕴掏,該文件無主要內(nèi)容障般,但主題和框架與gank.io相同,然后將內(nèi)容拷貝到Get_gank.html中盛杰。
- 使用Java抓取gank.io每一個頁面源代碼挽荡,使用日期循環(huán),不存在就跳過即供。
- 抓取同時解析出標(biāo)題和正文定拟,標(biāo)題放入哈希表,正文追加到新建的content文件中逗嫡。
- 抓取結(jié)束后將哈希表遍歷并以列表形式追加到Get_gank.html青自,形成前面的歸檔列表株依。然后將整個content內(nèi)容追加到Get_gank.html中,然后就OK了延窜。
- 當(dāng)然只實現(xiàn)了Java本地抓取恋腕,為了讓大家看到結(jié)果,我人工將Get_gank.html傳到七牛云上的逆瑞,所以它不會自動更新吗坚,還不知道怎樣實現(xiàn)在線抓取,有待研究和指教呆万,望大神指明道路。
爬取總結(jié)
- 沒有做好思路整理车份,導(dǎo)致代碼結(jié)構(gòu)一直混亂和時間的浪費谋减。
- 以實現(xiàn)為目的,無代碼優(yōu)化扫沼,但優(yōu)化了思路出爹。
- 值得高興的是做出來了自己沒事用來當(dāng)資料庫收集查詢也不錯。
最后展望
努力將干貨轉(zhuǎn)換成知識和技能缎除。努力欣賞每日妹紙严就,不,我應(yīng)該追求更高一點才是器罐。
最新一期的妹紙梢为。
原文鏈接:http://www.lxxself.com/post/wo-de-zha-zha-ji-zhu/2015-06-21