百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 文章教程 > 正文

SpiderFlow - 一个无需写代码的爬虫平台

yund56 2025-03-20 13:52 14 浏览

网络爬虫,是互联网数据抓取的主要方式之一,许多人都会有类似的需求。然而,网络爬虫的编写,通常需要掌握一定的代码编写能力,乃至于比较复杂的项目组织构建能力,有一定的技术门槛。

SpiderFlow,通过可视化的方便,无需编写代码,仅需拖拽链接节点,就能构建一个爬虫应用,十分便捷。


简介

SpiderFlow,是 ssssssss-team 在Gitee上开源的爬虫平台,仓库位于
https://gitee.com/ssssssss-team/spider-flow,目前版本为 v0.5.0。

SpiderFlow 以图形化方式定义爬虫流程,无需代码即可实现一个爬虫。无需编写代码,在线定制爬虫规则;插件丰富,拥有 redis、mongodb、oss、ocr、IP代理池、selenium等插件,高度灵活,扩展方便,规则定制灵活。

使用

SpiderFlow功能丰富,

  • 支持Xpath/JsonPath/css选择器/正则提取/混搭提取
  • 支持JSON/XML/二进制格式
  • 支持多数据源、SQL select/selectInt/selectOne/insert/update/delete
  • 支持爬取JS动态渲染(或ajax)的页面
  • 支持代理
  • 支持自动保存至数据库/文件
  • 常用字符串、日期、文件、加解密等函数
  • 支持插件扩展(自定义执行器,自定义方法)
  • 任务监控,任务日志
  • 支持HTTP接口
  • 支持Cookie自动管理
  • 支持自定义函数


SpiderFlow安装简单,首先准备环境:

JDK >= 1.8
Mysql >= 5.7
Maven >= 3.0

下载项目源码后,

  1. 设置Eclipse仓库,菜单Window->Preferences->Maven->User Settings->User Settings 后边的Browse,然后导入自己的Maven目录的conf目录下的settings.xml文件,然后点Apply,在点OK
  2. 导入到Eclipse,菜单file->Import,然后选择Maven->Existing Maven Projects,点击Next>按钮,选择工作目录,然后点击Finish按钮,即可导入成功
  3. 导入数据库,基础表:spider-flow/db/spiderflow.sql
  4. 打开并运行org.spiderflow.SpiderApplication.java
  5. 打开浏览器,输入(http://localhost:8088/)

此时就能看到可视化的管理后台了,可以进行爬虫列表的管理:

构建爬虫十分方便,通过可视化面板,使用拖拽组件的方式,就能很快地实现一个网络爬虫:

还支持在线Debug:

并提供了详尽的日志:

SpiderFlow使用不同的节点来组成爬虫逻辑,包括:

  • 开始节点:爬虫的起点,所有流程图必须有该节点
  • 爬取节点:用于请求HTTP/HTTPS页面或接口
  • 定义变量:用于定义变量之后,可以与表达式配套使用,实现动态设置各项参数(如动态请求分页地址)
  • 输出节点:主要用于调试,测试时会把输出打印到页面中,另外也可以用来自动保存到数据库或文件
  • 循环节点:实现循环逻辑
  • 等待结束:等待到该节点之前所有节点执行完毕时才会执行下一级节点
  • 执行SQL:主要用于与数据库交互(查询/修改/插入/删除等等)
  • 子流程:主要用于调用其他流程
  • 执行函数:主要用于调用一些关联性不大,无需返回值的函数,如下载文件,保存文件等
  • 连接线:用来流转至下一个节点

一个简单的爬虫流程如下:

运行顺序:A->B->(C->F),(D->E)->G->H

  • 先执行A节点
  • A节点执行完毕时,执行B节点
  • B节点执行完毕时,同时执行C、D节点
  • C节点执行完毕时,执行F节点
  • D节点执行完毕时,执行E节点
  • E、F节点都执行完毕时,执行G节点(G节点是等待结束节点,所以这里会等E、F都结束,否则无论E、F哪个节点执行完毕,都会执行G节点)
  • G节点执行完毕时,执行H节点
  • H节点执行完毕时,流程结束

由于C节点是循环节点,假设C节点循环次数是3次,则上方从C节点开始则变成C,C,C->F,F,F->G->H


SpiderFlow还提供了丰富的插件,包括:

  • redis插件
  • mongodb插件
  • IP代理池插件
  • OSS插件
  • OCR插件
  • Selenium插件

可以配合使用,实现更为复杂的功能。


总结

SpiderFlow 以图形化方式定义爬虫流程,无需代码即可实现一个爬虫。无需编写代码,在线定制爬虫规则,利用自定义的逻辑图设计方法,很方便就能设计出网络爬虫,且插件丰富,高度灵活,扩展方便,规则定制灵活。

相关推荐

七夕前学起来,程序员的浪漫:三十行代码实现用她的名字作幅画

hello,各位小伙伴们大家早上|中文|晚上|凌晨好,相信看这篇文章的有很多新朋友,估计也有少量的老朋友,首先做个简短的自我介绍,我是一灰灰,码农界的资深搬运工;今天呢,没有站在我身边的捧哏老师,那就...

127.手摇计算机的收藏(我的民间收藏笔记)

1970年代前后,我国生产的手摇计算机,主要有上海飞鱼牌和通用牌手摇计算机,天津文化牌手摇计算机。这几种手摇计算机的收藏价,目前很不统一。品相好又能使用的收藏价大概为1500—7000元。品相不好又...

计算机毕业设计Hadoop+Hive+PySpark小说推荐系统 小说可视化

基于Spark+hadoop大数据小说数据分析推荐系统(完整系统源码+数据库+开发笔记+详细部署教程+虚拟机分布式启动教程)直拍源码包部署爬虫可用基于用户协同过滤算法开发技术介绍编辑器:Pychar...

win7系统exe病毒文件夹怎么删除

Win7系统中exe病毒文件夹如何删除?下面为大家提供解决办法,快来了解吧!1、按下Win+R快捷键,输入gpedit.msc,所示,即可打开组策略编辑器。2、依次展开计算机配置下的管理模板,进入...

Windows 10 网络搜索设计太反人类?教你如何彻底关闭它

来源:太平洋电脑网我们知道微软在Windows10中,特别加强了系统的搜索功能,但Windows10的搜索的确很难称得上好用。抛开效率低下、呈现结果少、造成系统卡顿等老生常谈的问题不论,在功能设计...

win7系统exe病毒文件夹怎么删除?

经常遇到病毒文件夹,它们通常是带有exe后缀的文件夹名称,双击后会复制病毒。今天就教大家如何删除这些病毒文件夹。1、打开开始菜单,点击运行按钮;或者按下Win+R键,即可开启运行对话框。2、运行窗...

通过代码编写电脑关机程序

大家好,我是Anyday这期给大家分享的电脑小知识是通过代码编写程序进行关机。首先在桌面右键新建一个文本文档双击打开新建文档,在里面输入shutdown–s–t0,这就是我们上一期的关机代码(聪...

可视化程序设计必备书:从零开始Qt可视化程序设计

“可视化程序设计”是理工科极为重要的一门专业课程,实践性很强。其教学目标是使学生掌握可视化程序设计的基本方法、编程技能并具备上机调试能力,熟悉界面设计,掌握各种常用类(有些开发工具称控件,实...

重要通知!25年公务员专业参考目录已出!

大家关心的2025年江苏省公务员考试消息有了!一年一度江苏省公开征求对《江苏省2025年度考试录用公务员专业参考目录》的意见和建议公告出了!各地的公务员专业参考目录其实都查不多,江苏针对今年的具体情况...

计算机二级考试中的一些注意事项

科教武汉【计算机二级考试中的一些注意事项】1、要合理安排做题时间可以先通过观察整个题目的题形,判断整个试卷的难点,通过观察题型然后确定自己的应对策。选择题建议用时15-20分钟为好。自己要有一个时间...

天津专升本计算机知识点 选定文件和文件夹

在Windows7系统中,进行选定,包括多种,考试重点内容有三种。①选定多个连续的文件或文件夹,可用Shift键配合鼠标进行选定②选定多个不连续的文件或文件夹,可用Ctrl键配合鼠标进行选定③撤销某...

最新发布!四川这些岗位急需紧缺人才

12月17日,《四川省人力资源服务业急需紧缺人才目录》发布。据介绍,《四川省人力资源服务业急需紧缺人才目录》采集600余家用人单位信息,调查整理了40余家用人单位需求,从收集的上千条岗位信息中分析出3...

最新!普通高等学校本科专业目录(2024年)!共816种本科专业

高考成绩已定,目前最重要的,就是填报高考志愿了!!!(点击查看:广西2024高考分数线、一分一档表公布!今天开始填志愿!附前3年高考分数线、一分一档表)除了要在1308所本科大学中选出自己(孩子)喜欢...

cad文件夹加密

我学计算机辅助设计,常用CAD绘制图纸并存入文件夹。有时担心关机后设计被窃,便在网上寻找解决办法,最终找到了一种加密CAD文件夹的实用方法,有效保护了我的设计成果。1、首先,我们需要安装一款保护文件...

文件夹加密大师使用方法:快速加密文件指南

不想让他人看到私密文件?以下几种隐藏文件的方法各有优缺点,快来看看哪种最适合你!1、隐藏的文件夹2、首先,右击文件夹选择属性,在常规选项卡勾选隐藏,然后点击确定。3、若文件夹为隐藏状态,打开我的...