Java爬虫

一、爬虫是什么?

简单来讲,爬虫就是一个探测机器,它的基本操作就是模拟人的行为去各个网站溜达,点点按钮,查查数据,或者把看到的信息背回来。就像一只虫子在一幢楼里不知疲倦地爬来爬去。


二、Jsoup


1.官方文档

https://jsoup.org/

1.1、简介

    jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,

 可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

1.2、Jsoup的主要功能

    1)从一个URL,文件或字符串中解析HTML

    2)使用DOM或CSS选择器来查找、取出数据

    3)可操作HTML元素、属性、文本

    注意:jsoup是基于MIT协议发布的,可放心使用于商业项目。

三、Spring+Jsoup实现爬取网页数据实现

1、近期项目上需要爬取某公开采购网数据,要求:爬取 项目标题、日期、项目附件、自动在本地根据项目标题创建文件夹、将附件保存到对应的文件夹。网站地址:四川采购

2、核心代码(代码片可以直接运行,前提是导入maven依赖、详见文末源码)

Document doc;
		try {
			doc = Jsoup.connect("http://www.ccgp-sichuan.gov.cn/CmsNewsController.do?method=recommendBulletinList&moreType=provincebuyBulletinMore&channelCode=sjcg2&rp=25&page=1").get();
			Elements elements1 = doc.select(".info");
	        Elements time = doc.getElementsByClass("time curr");
	        Elements links = elements1.select("a[href]");  
          String data=time.select("span").text();

代码详解:

1.获取 class为info 标签内的内容:Elements elements1 = doc.select(".info");
2.获取获取 class为time curr标签内的内容 Elements time = doc.getElementsByClass("time curr");
3. 获取获取 elements1(此为HTML info class中的内容) 内的所有a标签的hrefElements links = elements1.select("a[href]");  
4.获取class timecurr 中span标签的数据 数据 String data=time.select("span").text();

四、项目源码


 

 

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐