Java教程之使用Jsoup實現簡單的爬蟲技術

  1.Jsoup簡述

   Java中支持的爬蟲框架有很多,比如WebMagic、Spider、Jsoup等。今天我們使用Jsoup來實現一個簡單的爬蟲程序。

   Jsoup擁有十分方便的api來處理html文檔,比如參考了DOM對象的文檔遍歷方法,參考了CSS選擇器的用法等等,因此我們可以使用Jsoup快速地掌握爬取頁面數據的技巧。

  2.快速開始

  1)編寫HTML頁面

千鋒<a href=http://www.mobiletrain.org/ target=_blank class=infotextkey>Java培訓</a>.jpg

  頁面中表格的商品信息是我們要爬取的數據。其中屬性pname類的商品名稱,以及屬於pimg類的商品圖片。

  2)使用HttpClient讀取HTML頁面

  HttpClient是一個處理Http協議數據的工具,使用它可以將HTML頁面作爲輸入流讀進java程序中。可以從http://hc.apache.org/下載HttpClient的jar包。

千鋒<a href=http://www.mobiletrain.org/ target=_blank class=infotextkey>Java培訓</a>.jpg

  3)使用Jsoup解析html字符串

  通過引入Jsoup工具,直接調用parse方法來解析一個描述html頁面內容的字符串來獲得一個Document對象。該Document對象以操作DOM樹的方式來獲得html頁面上指定的內容。相關API可以參考Jsoup官方文檔:https://jsoup.org/cookbook/

  下面我們使用Jsoup來獲取上述html中指定的商品名稱和價格的信息。

千鋒<a href=http://www.mobiletrain.org/ target=_blank class=infotextkey>Java培訓</a>.jpg

  至此,我們已經實現使用HttpClient+Jsoup爬取HTML頁面數據的功能。接下來,我們讓效果更直觀一些,比如將爬取的數據存到數據庫中,將圖片存到服務器上。

  3.保存爬取的頁面數據

  1)保存普通數據到數據庫中

  將爬取的數據封裝進實體Bean中,並存到數據庫內。

千鋒<a href=http://www.mobiletrain.org/ target=_blank class=infotextkey>Java培訓</a>.jpg

  2)保存圖片到服務器上

  直接通過下載圖片的方式將圖片保存到服務器本地。

千鋒<a href=http://www.mobiletrain.org/ target=_blank class=infotextkey>Java培訓</a>.jpg

  4.總結

  本案簡單實現了使用HttpClient+Jsoup爬取網絡數據,對於爬蟲技術本身,還有很多值得深挖的地方,以後再爲大家講解。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章