詳解java爬蟲(chóng)jsoup解析多空格class數(shù)據(jù)
在使用jsoup爬取其他網(wǎng)站數(shù)據(jù)的時(shí)候,發(fā)現(xiàn)class是帶空格的多選擇,如果直接使用doc.getElementsByClass(“class的值”),這種方法獲取不到想要的數(shù)據(jù)。
1、問(wèn)題描述:
在使用jsoup爬取其他網(wǎng)站數(shù)據(jù)的時(shí)候,發(fā)現(xiàn)class是帶空格的多選擇,如果直接使用doc.getElementsByClass(“class的值”),這種方法獲取不到想要的數(shù)據(jù)。
爬取網(wǎng)站頁(yè)面結(jié)構(gòu)如下:
2、其中文章列表的div為:<div class="am-cf inner_li inner_li_abtest"></div>
我們可以看到其class的值為:am-cf inner_li inner_li_abtest。帶空格的。多值的。
如果我們還是用getElementsByClass這個(gè)方法獲取的話,是獲取不到的。eclipse中斷點(diǎn)如下:
3、可以看到獲取的值的長(zhǎng)度size=0。沒(méi)有獲取到數(shù)據(jù)。
經(jīng)過(guò)各方搜索,發(fā)現(xiàn)解決方案:使用的不是getElementsByClass方法,可以使用其他方法。
先上成功后截圖:
4、我們可以看到數(shù)據(jù)的長(zhǎng)度size=20了。說(shuō)明獲取到數(shù)據(jù)了。
下面講解select方法使用:
Elements org.jsoup.nodes.Element.select(String cssQuery)
5、樣式選擇器。
查看源碼:
6、我們知道這個(gè)可以多個(gè)。
在看看我們案例中使用的是:div.am-cf.inner_li.inner_li_abtest。為什么要這么寫(xiě)呢?
查看需要爬取文章的頁(yè)面結(jié)構(gòu):
總結(jié):以上就是關(guān)于java爬蟲(chóng)jsoup解析多空格class數(shù)據(jù)的詳細(xì)內(nèi)容,感謝大家的閱讀和對(duì)腳本之家的支持。
- java爬蟲(chóng)jsoup解析HTML的工具學(xué)習(xí)
- Java爬蟲(chóng)實(shí)現(xiàn)Jsoup利用dom方法遍歷Document對(duì)象
- Java 使用maven實(shí)現(xiàn)Jsoup簡(jiǎn)單爬蟲(chóng)案例詳解
- Java使用httpRequest+Jsoup爬取紅藍(lán)球號(hào)碼
- Java爬蟲(chóng)(Jsoup與WebDriver)的使用
- java獲取文件編碼,jsoup獲取html純文本操作
- java通過(guò)Jsoup爬取網(wǎng)頁(yè)過(guò)程詳解
- java爬蟲(chóng)Jsoup主要類及功能使用詳解
相關(guān)文章
java如何實(shí)現(xiàn)自動(dòng)生成數(shù)據(jù)庫(kù)設(shè)計(jì)文檔
以前我們還需要手寫(xiě)數(shù)據(jù)庫(kù)設(shè)計(jì)文檔、現(xiàn)在可以通過(guò)引入screw核心包來(lái)實(shí)現(xiàn)Java?數(shù)據(jù)庫(kù)文檔一鍵生成。本文將具體介紹一下如何通過(guò)java自動(dòng)生成數(shù)據(jù)庫(kù)設(shè)計(jì)文檔,需要的朋友可以參考下2021-11-11一文詳解Java?etcd的應(yīng)用場(chǎng)景及編碼實(shí)戰(zhàn)
etcd?是一個(gè)高度一致的分布式鍵值存儲(chǔ)系統(tǒng)。本文旨在幫助大家理解etcd,從宏觀角度俯瞰etcd全局,掌握etcd的基本操作技能,需要的可以參考一下2022-08-08Spring?AOP實(shí)現(xiàn)用戶登錄統(tǒng)一驗(yàn)證功能
這篇文章主要為大家詳細(xì)介紹了Spring?AOP如何實(shí)現(xiàn)用戶登錄統(tǒng)一驗(yàn)證功能,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)具有一定的借鑒價(jià)值,需要的可以參考一下2023-01-01springboot vue項(xiàng)目后端列表接口分頁(yè)模糊查詢
這篇文章主要為大家介紹了springboot vue項(xiàng)目后端列表接口分頁(yè)模糊查詢,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05Java判斷一個(gè)時(shí)間是否在當(dāng)前時(shí)間區(qū)間代碼示例
這篇文章主要給大家介紹了關(guān)于使用Java判斷一個(gè)時(shí)間是否在當(dāng)前時(shí)間區(qū)間的相關(guān)資料,在日常開(kāi)發(fā)中我們經(jīng)常會(huì)涉及到時(shí)間的大小比較或者是判斷某個(gè)時(shí)間是否在某個(gè)時(shí)間段內(nèi),需要的朋友可以參考下2023-07-07hibernate關(guān)于session的關(guān)閉實(shí)例解析
這篇文章主要介紹了hibernate關(guān)于session的關(guān)閉實(shí)例解析,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02Jmeter 中 CSV 如何參數(shù)化測(cè)試數(shù)據(jù)并實(shí)現(xiàn)自動(dòng)斷言示例詳解
這篇文章主要介紹了Jmeter 中 CSV 如何參數(shù)化測(cè)試數(shù)據(jù)并實(shí)現(xiàn)自動(dòng)斷言,本文通過(guò)示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07spring依賴注入成功但在調(diào)用接口的時(shí)候拿到的依賴卻是null問(wèn)題
這篇文章主要介紹了spring依賴注入成功但在調(diào)用接口的時(shí)候拿到的依賴卻是null問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12