SpringBoot中如何实现使用Jsoup爬取网站数据
这篇文章主要为大家展示了SpringBoot中如何实现使用Jsoup爬取网站数据,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。
创新互联-专业网站定制、快速模板网站建设、高性价比三明网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式三明网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖三明地区。费用合理售后完善,十载实体公司更值得信赖。
爬取数据
导入jar包
1.8 7.6.1 org.jsoup jsoup 1.10.2 com.alibaba fastjson 1.2.62 org.springframework.boot spring-boot-starter-data-redis org.springframework.boot spring-boot-starter-data-elasticsearch org.springframework.boot spring-boot-starter-thymeleaf org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-devtools runtime true org.springframework.boot spring-boot-configuration-processor true org.projectlombok lombok true org.springframework.boot spring-boot-starter-test test org.junit.vintage junit-vintage-engine
新建实体类
@Data @NoArgsConstructor @AllArgsConstructor public class Content { private String title; private String img; private String price; }
编写爬虫工具类
public class HtmlParseUtil { public static void main(String[] args) throws Exception { new HtmlParseUtil().parseDDJJ("包").forEach(System.out::println); } public ListparseDDJJ(String keywords) throws Exception { //爬取url地址 String url = "https://search.xxxx.com/Search?keyword="+keywords; //解析网页,30s内未爬取成功,打印错误 Document document = Jsoup.parse(new URL(url),30000); //获取每一本书籍的id Element element = document.getElementById("DJ_goodsList"); //获取所有的li标签 Elements elements = element.getElementsByTag("li"); ArrayList goodsList = new ArrayList<>(); //遍历li标签的内容 for (Element el : elements) { String img = el.getElementsByTag("img").eq(0).attr("src"); String price = el.getElementsByClass("p-price").eq(0).text(); String title = el.getElementsByClass("p-name").eq(0).text(); Content content = new Content(); content.setTitle(title); content.setPrice(price); content.setImg(img); goodsList.add(content); } return goodsList; } }
以上就是关于SpringBoot中如何实现使用Jsoup爬取网站数据的内容,如果你们有学习到知识或者技能,可以把它分享出去让更多的人看到。
分享标题:SpringBoot中如何实现使用Jsoup爬取网站数据
本文来源:http://pwwzsj.com/article/pidigs.html