Java中用爬蟲進(jìn)行解析的實(shí)例方法
我們都知道可以用爬蟲來找尋一些想要的數(shù)據(jù),除了可以使用python進(jìn)行操作,我們最近學(xué)習(xí)的java同樣也支持爬蟲的運(yùn)行,本篇小編就教大家用java爬蟲來進(jìn)行網(wǎng)頁的解析,具體內(nèi)容請往下看:
1、springboot項(xiàng)目,引入jsoup
<dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.10.2</version> </dependency>
2、準(zhǔn)備解析對象
Content.java package com.asia.pojo; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data @NoArgsConstructor @AllArgsConstructor public class Content { private String title; private String img; private String price; }
3、爬蟲工具類
HtmlParseUtil.java package com.asia.utils; import java.net.URL; import java.net.URLDecoder; import java.util.ArrayList; import java.util.List; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import com.asia.pojo.Content; public class HtmlParseUtil { public static void main(String[] args) throws Exception { new HtmlParseUtil().parseJD("西瓜").forEach(System.out::println); } public List<Content> parseJD(String keywords) throws Exception { String url = "https://search.jd.com/Search?keyword=" + URLDecoder.decode(keywords, "GBK"); // 解析網(wǎng)頁.(Jsoup返回Document就是瀏覽器的Document對象) Document document = Jsoup.parse((new URL(url)), 30000); Element element = document.getElementById("J_goodsList"); Elements elements = element.getElementsByTag("li"); List<Content> list = new ArrayList<Content>(); for (Element el : elements) { String src = el.getElementsByTag("img").eq(0).attr("data-lazy-img"); String price = el.getElementsByClass("p-price").eq(0).text(); String name = el.getElementsByClass("p-name").eq(0).text(); list.add(new Content(name, src, price)); } return list; } }
到此這篇關(guān)于Java中用爬蟲進(jìn)行解析的實(shí)例方法的文章就介紹到這了,更多相關(guān)Java中如何使用爬蟲進(jìn)行解析內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
spring boot國際化之MessageSource的使用方法
這篇文章主要給大家介紹了spring boot國際化之MessageSource使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11JavaEE簡介_動力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了JavaEE簡介,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07基于springboot和redis實(shí)現(xiàn)單點(diǎn)登錄
這篇文章主要為大家詳細(xì)介紹了基于springboot和redis實(shí)現(xiàn)單點(diǎn)登錄,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06javafx tableview鼠標(biāo)觸發(fā)更新屬性詳解
這篇文章主要為大家詳細(xì)介紹了javafx tableview鼠標(biāo)觸發(fā)更新屬性的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-08-08springboot中獲取配置文件中屬性值的幾種方式小結(jié)
本文主要介紹了springboot中獲取配置文件中屬性值的幾種方式小結(jié),主要介紹了六種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05