怎么用Java中用爬虫进行解析呢???

442次阅读
没有评论

我们都知道可以用爬虫来找寻一些想要的数据,除了可以使用python进行操作,我们最近学习的java同样也支持爬虫的运行,本篇小编就教大家用java爬虫来进行网页的解析,具体内容请往下看:

1、springboot项目,引入jsoup

`<dependency>`

`<groupId>org.jsoup</groupId>`

`<artifactId>jsoup</artifactId>`

`<version>``1.10``.``2``</version>`

`</dependency>`

2、准备解析对象

`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=](https://search.jd.com/Search?keyword=)"` `+ URLDecoder.decode(keywords,` `"GBK"``);`

`// 解析网页.(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;`

`}`

`}`

到此结束???那是不可能的
怎么用Java中用爬虫进行解析呢???

最新2021整理收集的一些高频面试题(都整理成文档),有很多干货,包含mysql,netty,spring,线程,spring cloud、jvm、源码、算法等详细讲解,也有详细的学习规划图,面试题整理等,需要获取这些内容的朋友请加Q君羊:864488310

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:Python教程2022-10-27发表,共计1928字。
新手QQ群:570568346,欢迎进群讨论 Python51学习