不同平臺的博客,數據解析方式不一樣,數據抓取和存儲都是類似的。
1.確定博客首頁地址
? a.平臺地址
? 比如,CSDN的博客地址是?http://blog.csdn.net/
? b.賬號
? ?fansunion
? ?
? CSDN某個用戶的地址是:http://blog.csdn.net/FansUnion
2. 從首頁獲得關鍵信息
? 2.1獲得博客分類列表
??
? 新人畢業-老人跳槽(24)?
? OpenJDK源碼研究筆記(16)?
? 性能優化(11)?
? 中國象棋(13)?
??
? List<String> 存儲所有的文章分類,保存到數據庫中
? addArticleCategory(Integer userId,List<String> categoryList);
??
? 創建所有的日志分類(id自增,name)
??
? ? 2.2確定日志的頁數
? ?CSDN的"431條數據 共9頁"
? ?獲取到“9” pageCount
? ?
3.獲取日志集合???
? 3.1確定日志列表的地址
? ?比如CSDN的日志格式是:http://blog.csdn.net/FansUnion/article/list/2
??
??
? 3.2遍歷所有的文章列表
? ? for(int index=0;index<pageCount;index++){
??解析該頁的日志地址,比如CSDN的格式是“?http://blog.csdn.net/fansunion/article/details/17070151”
}
所有的日志地址集合
List<String> articleList;
4.遍歷所有的文章
? for(int index=;index<articleList.size;index++){
??抓取每1篇日志的字段數據,
??
??Article:標題、內容、摘要、時間、性質(原創、轉載、翻譯)
??
??保存到數據庫中
??addArticle(Article);
??
? }
原文首發:http://fansunion.cn/article/detail/59.html?