- 支持统计爬取的任务,默认实现内存记录器,只需要实现Recorder接口,即可轻松定义一个基于数据库的记录器,重写对应的方法即可实现断点续爬等功能。
- 只需要关注业务逻辑,而不需要过多关注技术实现。
- 多线程异步爬取
- 支持HTTP代理,爬取墙外内容,可以针对每一个链接配置请求参数,请求方式,请求头以及请求代理,轻松对接各种ip池
- 内置完整示例,帮助了解学习。
- 保存当前任务的来源链接
- 错误原因持久化
- 封装了完善的http请求工具类,支持各种常见请求
- 支持配置登录接口,在所有任务开始前进行登录
- 自定义去重逻辑
注意: Content-Type只能为application/x-www-form-urlencoded提交和application/json提交两种,如果没有参数可以不写,否则必须写此header.不支持form-data。
- 拉取本框架代码,具体参考top.jiangqiang.crawler.sample包下示例,可以重写top.jiangqiang.crawler.core.app.GenericStarter类,实现自己的启动类。
- 使用maven构建项目,引入下面依赖:
<dependency> <groupId>top.jiangqiang.crawler</groupId> <artifactId>J-crawler</artifactId> <version>4.1.1</version> </dependency>如果运行报错,注意jdk版本,最低17
本项目仅学习使用,切勿用在非法用途。否则后果自负,技术无罪。