java 爬虫工具
jsoup 普通网页爬虫
简介
jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据
主要功能
-
从一个URL,文件或字符串中解析HTML
-
使用DOM或CSS选择器来查找、取出数据
-
可操作HTML元素、属性、文本
注意
: jsoup是基于MIT协议发布的,可放心使用于商业项目。
maven仓库
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.14.3</version>
</dependency>
测试爬虫京东网页
@Test
void contextLoads() throws IOException {
//获取请求
String url = "https://search.jd.com/Search?keyword=男衬衫";
//解析网页
Document document = Jsoup.parse(new URL(url), 30000);
//获取 Element
Element element = document.getElementById("J_goodsList");
//获取所有的li元素
Elements elements = element.getElementsByTag("li");
// 获取元素的内容
for (Element el : elements) {
//关于这种图片特别多的网站,图片都是延迟加载的!
//source-data-lazy-img
String img = el.getElementsByTag("img").eq(0).attr("source-data-lazy-img");
String price = el.getElementsByClass("p-price").eq(0).text();
String title = el.getElementsByClass("p-name").eq(0).text();
System.out.println("==========================测试连接网页================================");
System.out.println("img:" + img + ",price:" + price + ",title:" + title);
}
}