把网页数据采集做成图形化点击操作(EasySpider)
EasySpider(易采集)是 NaiboWang 开发的可视化网页爬虫,用 JavaScript 编写,AGPL-3.0 许可。在浏览器里点选元素就能搭出采集流程,也能脱离界面用命令行执行。这篇文章讲清下载路径、命令行参数、结果落在哪里,以及驱动版本、iframe 元素这些实际会撞上的问题,帮读者判断该不该上。
网页上的数据要成批拿走,多数人的第一反应是写 Python 脚本:分析请求、写解析规则、再对付反爬,站点改一次版就得重写一遍。EasySpider(中文名易采集)走的是另一条路,它操作的对象是浏览器里看得见、点得着的页面元素,用户点几下就能把一条采集流程搭出来。项目 2020-07-18 创建,最近一次提交在 2026-10-10。
EasySpider(易采集)是一款用 JavaScript 写的可视化网页爬虫软件,在浏览器里点选页面元素即可设计采集任务,输出按字段拆分的数据,全程不需要写代码。
项目把任务设计和任务执行拆成两件事。设计在图形界面里完成:右键选中一个包含多条信息的区块,软件会自动检测页面上同类型的块,接着点「选中全部」「选中子元素」「采集数据」,每个条目的信息就按字段存下来。执行环节可以脱离界面,只走命令行,所以能嵌进别的系统里调用。
软件把 Chrome 浏览器一起打包了进来,用户不必自己装驱动、配版本,代价是体积,仓库有 154328 KB。当前最新版本是 v0.6.5,发布于 2026-08-19。这个项目的主要语言是 JavaScript,占代码量的 64.9%,其次是 Python 17.0%,许可证为 GNU Affero General Public License v3.0。
第一次用它需要知道的事
这几条来自 README 与发布说明,装之前先对一下自己的环境。
- Windows 版本分 x64 和 x32 两条线。x64 版只支持 64 位 Windows 10 与 Windows Server 2016 及以上;x32 版支持所有位数的 Windows 7 及以上,所以 64 位的 Windows 7 也要下 x32 版。x32 版内置的 Chrome 固定在 109 版本,不随 Chrome 更新,想用新版 Chrome 就得用 x64 版。
- MacOS 版支持 Apple 自研芯片(M1、M2)和 Intel 芯片,压缩包要用系统自带的「归档使用工具」解压。
- 体积不小。仓库 154328 KB,有用户在 Issue 里指出,0.3.0 的 Windows 包里那个 Chrome Installer 其实可以不打包,能省下 100MB。
- 许可证是 AGPL-3.0。README 声明软件完全免费,包括商业使用和二次开发;Issue 里另有一条长期计划,是把协议换成 Apache 或 MIT。
- 运行任务时需要联网,由内置浏览器去访问目标页面。README 里没有要求注册账号或申请密钥的步骤,只有接入 CapSolver 这类第三方验证码服务时才需要另行注册。
最短上手路径
- 到 Releases 页下载最新版 v0.6.5。国内下载慢的话,用 README 给的中国境内地址
https://easyspider.cn/download.html。 - 解压。Windows 版直接解压即可;MacOS 版要用系统自带的「归档使用工具」,README 专门提示了这一点。
- 打开软件,在目标网页上右键选中一个包含多条记录的区块,软件会自动检测同类型的块。
- 依次点「选中全部」→「选中子元素」→「采集数据」,数据会按字段分开保存。想连详情页一起采,就在「选中全部」之后改用「循环点击每个元素」。
- 想让任务脱离界面跑,改用命令行:执行
easyspider_executestage,用--ids指定任务编号,其余参数见下一节。
它实际上能做哪些事
图形化设计与采集
- 自动匹配同类型元素:在一个商品块上右键,软件自动检测页面上结构相同的块,点「选中全部」批量选中,不用逐个点。
- 选中子元素按字段保存:在选中的大块里继续选子元素,采集时每项信息会落到不同字段,README 的示例就是把所有商品的信息分字段存下来。
- 循环进入详情页:选中全部后点「循环点击每个元素」,软件逐个打开详情页,再在详情页上继续设置要采的内容。
- 需要登录的网站:官方 B 站教程里有一节专门讲怎么无代码采集登录后才能看的页面,用的案例是知乎。登录态具体靠什么机制保持,仓库节选里没有说明。
执行与自动化
- 命令行执行:
easyspider_executestage可以在不打开图形界面的情况下跑任务,README 说这样能方便地嵌入其他系统。 - 无头模式:命令行参数
--headless控制。Issue 里有用户反馈设了无头模式不生效,只能走桌面执行,该问题已标记解决。 - 定时执行任务:官方视频教程里有一节是定时执行任务,和「将提取值作为变量输入」放在一起讲。
外部服务集成
- 验证码与代理:仓库根目录有一份
How to Solve Captcha in EasySpider with CapSolver Integration.md,讲怎么接 CapSolver 处理验证码。README 的赞助者一节还列出 Bright Data、Webshare、Thordata 三家代理服务,都写明可以配合 EasySpider 做数据采集。
参数速查
命令行执行的入口是 easyspider_executestage。仓库里没有给出完整的参数手册,这些写法来自用户在实际 Issue 里贴出的命令。
--ids:任务编号,示例写法是--ids '[10]'。--server_address:本地服务地址,示例是http://localhost:8074。--config_folder:配置目录,示例指向 ElectronJS 目录。--headless:无头模式开关,示例写作--headless 0。--user_data与--read_type:示例里分别取 1 和 local,仓库没有说明取值范围。
一条完整命令长这样:
easyspider_executestage --ids '[10]' --user_data 1 --server_address http://localhost:8074 --config_folder "/opt/wfcloud/EasySpider-master/ElectronJS/" --headless 0 --read_type local
输出与结果位置
图形界面里点「采集数据」之后,README 的说法是采集到的信息会分成不同字段保存下来。具体落到哪个文件、是什么格式(CSV、Excel 还是数据库),README 节选里没有说明。
走命令行时,任务配置放在 --config_folder 指向的目录,运行时通过 --server_address 指定的本地服务读取任务。结果文件的确切路径,仓库里同样没有说明。
无头模式下还能截图。Issue 里有用户反馈在 v0.6.2 下截京东首页只拿到 779 x 579 的图,拿不到整页,该问题已标记解决。
实际使用中的坑
这几条来自仓库 Issue,都是真实用户撞到的问题,附当前状态。
- 浏览器驱动版本对不上,任务打不开网页(待解决)。有用户在 EasySpider 0.6.3 上突然无法从 chromedriver 打开任务网页了,环境是 Chrome 131.0.6778.205。相关的另一条报错
Selenium, common.exceptions.WebDriverException: Message: unknown error: Chrome...已解决。 - 命令行设了无头模式不生效(已解决)。用户反馈命令行执行时
--headless不生效,只能在桌面模式下跑。 - iframe 里的元素选不中(已解决)。元素位于
iframe标签内时,界面里既识别不了也选不上,Issue 里讨论后已解决。 - Mac 上启动报扩展路径不存在(已解决)。macOS 下出现
OSError: Path to the extension doesn't exist的报错。
替代方案一览
| 项目 | 适合谁 | 部署方式 | 主要限制 | 什么情况下选它更合适 | 项目地址 |
|---|---|---|---|---|---|
| EasySpider | 不想写代码、要在图形界面里点选页面搭出采集任务,并且只在自己电脑上跑任务的个人或小团队 | 从 Releases 下载安装包解压运行,Windows 与 macOS 有预打包版本,内置 Chrome;也能命令行执行 | 许可证为 AGPL-3.0;x32 版内置 Chrome 固定在 109 版本;复杂站点要自己写 xpath,官方明确不解答「怎么设计任务」这类问题;仓库体积 154328 KB | 目标站点结构稳定、采集量不大、需要在可视化界面里反复调试任务逻辑时 | EasySpider |
| firecrawl-mcp-server | 已经在用 Cursor 这类 AI 助手、想让助手直接抓网页内容的开发者 | 作为 MCP server 接入 AI 客户端 | 它把抓取与搜索能力提供给 AI 助手,跟人工在图形界面上点选元素搭任务的重合度很低;是否收费、依赖哪些密钥,仓库描述里没有说明 | 抓取动作由 AI 助手在对话里发起、不需要人盯着界面操作时 | firecrawl-mcp-server |
| excel-parser-processor | 手里已经有一份 Excel 清单、要按清单批量下载文件的人 | 仓库没有说明 | 它解决的是按表格批量下载,不负责在页面上点选元素、解析结构化字段;其余细节未逐一核实 | 任务本质是照着表格里的地址逐个下载,而非从页面上抓结构化数据时 | excel-parser-processor |
这两项能解决的是部分相同的问题。如果抓取动作想由 AI 助手在对话里触发,EasySpider 没有 MCP 接口,只能人工进界面或者调命令行,这时 firecrawl-mcp-server 更直接。如果任务只是照着 Excel 里的地址批量下载文件,excel-parser-processor 这类工具配起来比拖一条点击流程省事。EasySpider 的短板也在这里:站点结构复杂时选择器还得自己写 xpath,官方明确不对任务设计类问题做答疑,这类需求交给写代码的团队或现成的采集服务更合适。
别踩的合规线
EasySpider 属于网页抓取与浏览器自动化工具,能模拟人的点击行为访问网站。这类工具只可用于自有资产,或者已经拿到明确授权的目标。
项目作者在置顶 Issue 里写明,政府、军事等网站不予答疑,这也是一个信号:这类目标不在支持范围内。
未经授权对他人网站发起批量请求,可能违反目标站点的服务条款、干扰对方正常服务,涉及个人信息时还可能触碰数据保护相关的法律要求。使用前先确认目标站点是否允许自动化访问,以及要采集的内容是否涉及个人信息或受保护的数据。
什么时候值得用它
目标网站结构稳定、页面上能直接点出想要的数据,你又不想为了这次采集去学一套爬虫框架,EasySpider 这类图形化工具能省掉大量写解析代码的时间。
任务规模在几十到几百个页面、采集逻辑还要反复调整时,可视化调试的优势更明显,改一个字段不用重跑整段脚本。
已经有别的系统在跑,只差一个采集执行环节时,它的命令行入口和 --server_address 本地服务可以接进去。
焚评:这个项目的量化评分
本项目的选题来自 焚.com(一个按公开公式给 GitHub 项目打分的站)。焚评当前总分 9.2 分(满分 10)。下表是各维度的得分:
| 评分维度 | 得分 |
|---|---|
| 热度动量(权重 25%) | 10.0 / 10 |
| 开发活跃(权重 25%) | 7.5 / 10 |
| 社区响应(权重 15%) | 9.9 / 10 |
| 文档质量(权重 15%) | 9.7 / 10 |
| 发布节奏(权重 10%) | 8.8 / 10 |
| 风险控制(权重 10%) | 10.0 / 10 |
评分口径、权重与计算方式见焚.com 的评分方法页;数据随 GitHub 指标刷新,具体数值以焚.com 当前页面为准。本文正文为诀.com 独立撰写,评分数据由焚.com 授权引用。
内容核验说明
这份记录的价值在于把 EasySpider 的边界讲清楚了:图形化点选加命令行执行,内置 Chrome,省掉配驱动的步骤,适合不想为一次采集去学爬虫框架、任务规模在几十到几百页、目标站点结构稳定的人。命令行参数、驱动版本、iframe 这几类真会撞上的问题来自 README 与仓库 Issue,参考价值实在。
版本号、仓库体积、语言占比、许可证与焚评分数来自原作者公开披露和焚.com,诀.com 未独立验证;命令行参数取值、结果文件格式与路径在仓库中未说明;Issue 状态与用户反馈未经复现,实际结果不保证一致。用户反馈摘要
根据仓库 Issue 来看,问题集中在编译打包和运行环境:有提交者建议打包时去掉 Chrome Installer 以省下约 100MB,并反映构建流程散乱;多条报告 Windows 编译打包、Mac 启动报扩展路径不存在、CentOS 下编译失败。无头模式不生效、无头截图只得到 779 x 579、iframe 内元素选不中等问题,状态多为已解决。作者在置顶 Issue 里说明只答疑功能与 Bug,政府军事类网站不答疑,长期计划是把协议换成 Apache 或 MIT。
基于该仓库公开 Issue 整理,只反映提交者报告的现象与诉求,不代表诀.com 立场,也不代表问题已被确认。项目来源与说明
开源项目:NaiboWang(NaiboWang)
本文由诀.com 编辑基于该项目的公开信息独立撰写,属原创解读,不是对项目文档的翻译或转载;文中提到的功能与参数以官方仓库为准,代码与文档版权归原作者所有。
查看项目仓库