java 爬蟲技術---上

前言:ceo給了個需求,讓我爬取某某論壇的文章,兩個論壇,只爬取他們最新資訊模塊的內容。爬取到的內容存入數據庫,每天8點進行更新。然後由運營審覈選取合適的新聞定時推送到app上。

簡單分析了需求之後,開始進行技術選型,java爬蟲也是有很多種類的,可以使用比較成熟的框架。我這裏使用的是jsoup,簡單粗暴的一種技術。

jsoup 是一款Java 的HTML解析器,可直接解析某個URL地址、HTML文本內容。它提供了一套非常省力的API,可通過DOM,CSS以及類似於jQuery的操作方法來取出和操作數據。

  • 先來個簡單的demo做個演示,
 Document doc = Jsoup.connect(url).get();

        //獲得文章標題
        String title2 = doc.select("具體選擇器內容").get(0).text();  
這段代碼很好理解,就是爬取指定url下文章的一個標題。使用jsoup的話,首先要導入jsoup的jar包。然後就可以直接使用。代碼的第一步是得到一個dom對象,就是我們瀏覽器打開一個網頁右鍵檢查看到的代碼樣子。得到這整個網頁的html代碼之後,開始進行過濾操作。可以使用各種選擇器來進行數據的過濾,熟悉js,jq的同學做這快工作的時候還是想對比較簡單的。這裏又一個jsoup選擇器的連接,大家可以參考下,基本可以滿足我們的需求。jsoup api文檔

選擇器的選擇是十分重要的,比如我們想爬取標題,就去找它標籤對應的唯一的class屬性,不唯一的話就往上一層,或者通過ID也可以,甚至組合屬性,具體情況具體分析,針對不同的網頁都要制定一套適配的方案。這是我初步爬取到的結果:

  • 後續爬取後的處理,與移動端的交互請看下篇!有問題,歡迎諮詢QQ1093022745
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章