git地址:spider-flow: 新一代爬虫平台,以图形化方式定义爬虫流程,不写代码即可完成爬虫。
官方文档地址:spider-flow
一、安装运行
下载代码,执行db内 .sql文件
启动并运行
二、创建用例
计划新增一个增量爬取的任务1测试爬取网址
通过f12 可以看到请求结果是json格式,拿到请求连接,开干
1,由于默认循环自检限制为5000 首先修改下项目配置,防止报死循环检测错误
2,配置数据库
连接本地数据库 编码需设置utf8 否则中文乱码
3,增量爬取设置
建立数据库历史数据量表,用于存储历史爬取数据量,爬取数据时通过查询计算需要爬取的新增数据
表:
4,节点流程
(1)先从数据库查出历史数据量,即本次起始结束位置
(2)首次访问,获得数据总数
(3)
将刚刚拿取的 数据库值和页面总数 定义变量,并计算
(rs为数据库查询默认变量,详情见官方文档)
分页计算需按进1 最后位置计算 是为增量做准备
(4)将最新的页面总数存入数据库,方便下次增量爬取
(5)爬取分为最后一次和非最后一次爬取,页面数据的查询必须有排序,保证顺序不会改变
(6)非最后一次爬取
定义循环,由于下标从0开始,所以这里page+1
循环次数不爬取最后一页,所以次数-1
取得页面data以及分页属性
获取详细参数数据
(7)最后一次
直接查询定义的最后一页,不做循环处理
变量获取与(6)一致
(8)数据已经爬取完成,接下来爬取相关附件
从页面拿到的附件请求地址
定义附件存储变量,
fileData 这里使用了数据过滤,只提取type=word的地址
过滤语法为jsonpath
filePath为附件存储的地址,其他字段需和数据库字段对应
输出,勾选数据库,将拿到的数据存入数据库
将附件下载至本地
实际结果演示:
将数据爬取历史总量设为0:
开始爬取:
数据库查看结果:
下载的附件: