Java 爬虫入门

本文介绍了Java爬虫的基础知识,通过Jsoup工具进行http请求,以起点中文网为例,演示如何爬取小说信息,包括书名、类型、作者、类别和简介。在实际操作中,需要注意网页元素的定位和HTML DOM树解析,同时提醒初学者要注意爬虫的合法性和反爬策略。
摘要由CSDN通过智能技术生成

网络爬虫

网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

简单的说就是爬取网页,解析,处理。

需要使用到 Jsoup 工具来做 http 请求:Jsoup 工具下载

尝试爬取一下 起点中文网 中的小说信息,确定要爬取页面

  

 

点击 F12 ,打开浏览器调试界面,找到需要解析页面的元素。

这里我们需要爬取小说的书名,类型,作者,类别,简介字段。根据 HTML DOM树,找到对应的元素,并对其进行解析。

代码

import java.io.IOException;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import com.hist.util.DataUtils;

public class SpiderDemo {
	public static final String URL = "https://www.qidian.com/search?kw=%E5%AE%8C%E7%BE%8E%E4%B8%96%E7%95%8C";
	
	public static void main(String[] args) {
		try {
			// 进行 http 连接,get 请求方式
			Document doc = Jsoup.connect(URL).get();
			// 根据HTML DOM树原理,查找到对应的元素
			Elements bookList = doc.select(".book-img-text ul li");
			for(Element e : bookList) {
				String[] split = e.select(".author a").text().split(" ");
				System.out.println("小说名称:"+e.select("h4 a").text());
				System.out.println("小说作者:"+split[0]);
				System.out.println("小说类别:"+split[1]);
				System.out.println("小说简介:"+e.select(".intro").text());
				System.out.println("小说总字数:"+DataUtils.spiderSubstring(e.select(".book-right-info .total p").first().text(),3));
				System.out.println("小说总推荐:"+DataUtils.spiderSubstring(e.select(".book-right-info .total p").last().text(),3));
				System.out.println("---------------------------");
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

运行结果

网络爬虫入门很简单,但是要注意不是所有数据都允许你爬取,还有一定的反爬虫策略,下篇博客再给大家介绍。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值