Java 使用maven實現(xiàn)Jsoup簡單爬蟲案例詳解
一、Jsoup的簡介
jsoup 是一款Java 的HTML解析器,可直接解析某個URL地址、HTML文本內(nèi)容。它提供了一套非常省力的API,可通過DOM,CSS以及類似于jQuery的操作方法來取出和操作數(shù)據(jù)
二、我們可以利用Jsoup做什么
2.1從URL,文件或字符串中刮取并解析HTML查找和提取數(shù)據(jù),
2.2使用DOM遍歷或CSS選擇器操縱HTML元素,屬性和文本
2.3從而使我們輸出我們想要的整潔文本
三、利用Jsoup爬取某東示例
可以從圖中看到,成功爬取某東的女裝熱門銷量從高到低的標(biāo)題,從而可以分析到銷量高(或者是綜合排序)在前列的標(biāo)題名稱。從而可以剖析出熱門商品的命名規(guī)范。
四、Jsoup用法
4.1先創(chuàng)建maven工程,在maven工程上注入依賴
4.2 注入依賴后需要導(dǎo)入依賴,否則在程序中使用Jsoup會全部報錯。
4.3利用JSP的知識找出目標(biāo)元素
如在某東界面我們發(fā)現(xiàn), 控制目標(biāo)頁面的ID為"plist",則我們使用
getElementById("plist");方法去獲取到他的ID
接著獲取目標(biāo)標(biāo)題,可以由上圖分析得,標(biāo)題是由<em>標(biāo)簽所控制,因此我們需要用到
getElementsByTag("em");去捕捉到em的部分
最后循環(huán)輸出他的部分即可。
五、總結(jié)
Jsoup只能應(yīng)用于簡單的頁面捕捉,在實際開發(fā)中許多網(wǎng)站采用Ajax技術(shù)等使得模塊在動態(tài)變化抑或是有反爬蟲技術(shù),因此本技術(shù)有局限性。熟悉前端jsp技術(shù)的同學(xué)應(yīng)該會游刃有余。
最后附上所有代碼
到此這篇關(guān)于Java 使用maven實現(xiàn)Jsoup簡單爬蟲案例詳解的文章就介紹到這了,更多相關(guān)Java 使用maven實現(xiàn)Jsoup簡單爬蟲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java8函數(shù)式接口的基礎(chǔ)學(xué)習(xí)教程
這篇文章主要給大家介紹了關(guān)于Java8函數(shù)式接口基礎(chǔ)學(xué)習(xí)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04關(guān)于Java中如何實現(xiàn)文件的讀寫操作
在Java中,可以使用File和FileInputStream、FileOutputStream、BufferedReader、PrintWriter等類來進(jìn)行文件讀寫操作,需要的朋友可以參考下2023-05-05Java經(jīng)典面試題匯總:網(wǎng)絡(luò)編程
本篇總結(jié)的是Java 網(wǎng)絡(luò)編程相關(guān)的面試題,后續(xù)會持續(xù)更新,希望我的分享可以幫助到正在備戰(zhàn)面試的實習(xí)生或者已經(jīng)工作的同行,如果發(fā)現(xiàn)錯誤還望大家多多包涵,不吝賜教,謝謝2021-07-07Netty分布式pipeline管道傳播事件的邏輯總結(jié)分析
這篇文章主要為大家介紹了Netty分布式pipeline管道傳播事件總結(jié)分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03