apify-ultimate-scraper – 网页抓取与数据提取 Skill

3周前更新 7 0 0 0

Apify Ultimate Scraper 是帮助 AI Agent 抓取网页并提取结构化数据的 Skill,适用于电商价格监控、社交媒体采集、搜索引擎结果获取等需要批量网页数据采集的场景。

Skill 安装

多 Agent 安装
npx skills add https://github.com/apify/agent-skills --skill apify-ultimate-scraper

使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。

Skill 调研报告

Skill 详细介绍

apify/agent-skills#apify-ultimate-scraper 是 Apify 官方 agent-skills 仓库中的一个 Skill,名称可以识别为 apify-ultimate-scraper。

它是什么

– Apify 官方 agent-skills 仓库里的一个 Skill,不是独立软件。
– 它本身不包含爬虫引擎,也不直接抓取网页。
– 它的核心作用是把“用 Apify 完成网页抓取 / 数据采集”这件事,整理成 Agent 可以理解和执行的 Skill 指令集。
– 安装后,Agent 会知道在遇到网页抓取、结构化数据提取、批量数据采集这类需求时,应该如何通过 Apify 的 Actor 生态来完成任务,而不是自己乱写爬虫。

它不是什么

– 不是 Apify 平台本身,也不是 Apify Actor。
– 不是通用爬虫库(不是 Playwright、Puppeteer、Scrapy 的替代品)。
– 不是开箱即用的“输入 URL 就返回数据”的独立工具,实际抓取工作由 Apify 平台上对应的 Actor 完成。
– 不保证对任意网站都能抓取成功,成功率取决于目标网站结构、反爬策略以及所选 Actor 能力。

核心能力(来自 Apify 抓取体系的典型能力)

– 判断任务是否适合用 Apify 抓取。
– 为具体任务选择合适的 Apify Actor(例如网页内容抓取、结构化数据提取、搜索引擎结果抓取等)。
– 指导 Agent 传参调用 Actor,并处理返回的结构化数据。
– 把抓取结果整理成可用的 JSON / 表格 / Markdown 等格式。
– 在任务涉及大规模抓取时,帮助组织批量输入而不是逐个手写。

典型任务

– 抓取指定网页的正文、标题、链接等结构化内容。
– 批量抓取多个 URL 的同类信息。
– 抓取搜索结果页、商品页、列表页等结构化数据。
– 把抓取结果整理成表格或 JSON,方便后续分析。
– 为数据采集类项目生成可执行的抓取方案。

工作方式

– Skill 侧:向 Agent 提供“什么时候用、用哪个 Actor、怎么调用、怎么处理结果”的指令。
– 平台侧:Apify 平台提供 Actor 运行环境、代理、调度、存储等能力。
– 两者关系:Skill 是“说明与调度”,Apify 是“实际执行”。没有 Apify 账号或有效运行环境时,Skill 无法凭空完成抓取。

适合谁

– 需要用 Agent 辅助完成网页抓取和数据采集的人。
– 已经使用或愿意使用 Apify 平台的用户。
– 需要对网页数据做结构化整理、批量采集、后续分析的人。

不适合谁

– 只想要一个本地跑、不依赖任何第三方平台的爬虫的人。
– 目标网站有严格反爬、需要长期维护定制爬虫的场景。
– 只做单页面一次性手工复制内容的极轻量需求。
– 拒绝使用第三方云平台、只接受本地代码执行的用户。

Skill 安全评估

总体判断:apify/agent-skills#apify-ultimate-scraper 来自 Apify 官方 agent-skills 仓库,来源可信度较高。它本身是 Skill 指令集,不直接执行抓取,真正的网络请求、代理、存储发生在 Apify 平台上。安全关注点主要不在 Skill 本身,而在 Apify 账号凭证、抓取目标网站的合规性以及数据去向。

来源可信度

– 来自 Apify 官方仓库,不是第三方重新发布的同名 Skill。
– 但“官方仓库”不等于“已通过全面安全审计”,具体以当前官方说明和 Apify 平台安全策略为准。

凭证与账号风险

– 使用 Apify 抓取通常需要 Apify 账号,可能涉及 API Token。
– 一旦 Token 泄露,他人可能消耗你的 Apify 额度、访问你的数据,甚至产生费用。
– 建议为 Apify Token 设置最小必要权限,并定期轮换。
– 不要把 Apify Token 明文写进公开仓库、共享文档或聊天记录。

网络访问

– Skill 实际工作会通过 Apify 平台访问目标网站。
– 网络访问本身是这个 Skill 的正常用途,不是异常行为。
– 真正需要留意的是:抓取目标是否合规、是否违反目标网站的服务条款或 robots 规则。

数据流向

– 抓取到的数据会经过 Apify 平台处理,可能存储在 Apify 的存储中。
– 如果抓取的是敏感数据(个人信息、内部页面、登录后内容),需要考虑数据落地的合规问题。

Agent 权限

– 如果 Agent 被授予 Shell 执行权限,并且 Skill 涉及安装依赖或运行命令,需要确认命令来源可信。
– 如果只需要 Skill 帮助规划抓取方案,可以关闭 Agent 的自动执行权限,由用户手动执行。

合规提示

– 抓取第三方网站前,应确认目标网站的服务条款、robots.txt 以及当地法律要求。
– 不要用该 Skill 抓取需要授权才能访问的私人数据。
– 不要用于高频、恶意、造成目标站点负担的抓取。

Skill 使用要求

一、Agent / 客户端

– 该 Skill 来自 Apify 官方 agent-skills 仓库,属于 Agent Skill 格式。
– 官方没有公布完整的第三方 Agent 兼容列表。
– 从 Agent Skill 的通用工作方式看,只要客户端支持 Skills 或自定义指令加载机制,通常可以尝试使用。
– Claude Code、Codex、Cursor、Trae、OpenClaw、WorkBuddy 等主流 Agent 中,具体兼容程度取决于各自当前版本对 Skill 的支持方式。
– 哪个 Agent 最适合,以该 Skill 当前官方说明为准。

二、运行环境 / 依赖

| 项目 | 要求 |
|—|—|
| Agent | 支持 Skills 或自定义指令加载的 Agent |
| 网络 | 需要(访问 Apify 平台和目标网站) |
| Apify 账号 | 实际抓取时需要 |
| Node.js / Python | 官方未明确列为该 Skill 本身的硬性依赖,以当前官方说明为准 |

– 如果 Skill 指引 Agent 调用 Apify API 或 Actor,可能需要对应的 CLI 或 HTTP 调用能力,具体方式以 Apify 官方文档为准。

三、权限

– 网络访问:必需(抓取任务的核心)。
– Apify 账号 / Token:实际执行抓取时必需。
– 文件读取 / 写入:视任务而定,用于读取待抓 URL 列表或保存结果。
– Shell:是否必需取决于具体安装和调用方式,官方未强制要求时可关闭自动执行。
– 浏览器:由 Apify 平台侧 Actor 处理,本地通常不需要。

四、账号 / API Key

– Skill 本身只是指令集,不需要单独的 API Key。
– 但要真正完成抓取,需要有 Apify 账号,并可能需要 Apify API Token。
– Token 的具体获取方式、权限范围和使用限制,以 Apify 官方文档为准。

最小使用条件

1. 一个支持 Skill 加载的 Agent。
2. 可访问 Apify 平台和目标网站的网络。
3. 一个 Apify 账号(实际抓取时)。
4. 对目标网站抓取合规性的确认。

Skill 安装、使用与卸载教程

一、安装

可以直接复制本页面提供的 Skill 安装指令,粘贴到对应 Agent 或终端中执行。

如果不确定自己的 Agent 如何安装,可以直接问当前 Agent:

如何安装 apify/agent-skills#apify-ultimate-scraper?

如何在 Claude Code 中安装 apify/agent-skills#apify-ultimate-scraper?

如何在 Codex 中安装 apify/agent-skills#apify-ultimate-scraper?

如何在 Cursor 中安装 apify/agent-skills#apify-ultimate-scraper?

让当前 Agent 根据自己的 Skill 加载与管理机制来指导安装,通常比手动复制目录更稳妥。

二、安装后如何使用

安装后,遇到网页抓取、数据采集、结构化提取这类任务时,把需求描述清楚,让 Agent 调用该 Skill。

使用示例:

使用 apify-ultimate-scraper,帮我抓取这个列表页里所有商品的标题、价格和链接。

使用 apify-ultimate-scraper,把下面这 20 个 URL 的正文标题和发布日期整理成表格。

使用 apify-ultimate-scraper,帮我规划一个抓取搜索结果页并导出 JSON 的方案。

描述需求时建议包含:目标 URL、要抓的字段、期望输出格式、数量规模。这些信息越清楚,Agent 越容易选对 Actor 并正确调用。

三、卸载

不同 Agent 的 Skill 安装位置和管理方式不同,没有统一卸载命令。

– 优先使用对应 Agent 或 Skill 管理器提供的删除方式移除该 Skill。
– 如果不确定,可以直接问当前 Agent:

如何卸载 apify/agent-skills#apify-ultimate-scraper?

让 Agent 根据本地的 Skill 加载机制给出移除方法,通常比手动删目录更可靠。

常见问题

1. 中国大陆网络环境下能正常使用吗?

该 Skill 实际抓取依赖 Apify 平台,使用效果受 Apify 平台可达性和目标网站可达性影响。如果网络无法稳定访问 Apify,Skill 中的调用步骤可能无法完成。具体以 Apify 平台在你所在地的可访问情况为准。

2. 安装后 Agent 没有识别到这个 Skill,怎么排查?

先确认安装是否落在当前 Agent 实际读取的 Skill 目录或配置中。不同 Agent 的加载机制不同,最直接的办法是问当前 Agent:“你现在能识别 apify-ultimate-scraper 吗?如果不能,如何让它生效?”再根据 Agent 的反馈调整。

3. 可以同时安装到多个 Agent 吗?

通常可以。Skill 本质上是指令集,只要各个 Agent 支持 Skills 加载,就可以分别安装。但每个 Agent 的环境、权限和加载路径相互独立,安装时要分别处理。

4. Skill 更新后需要重新安装吗?

取决于你的安装方式。如果是通过 Git 仓库或包管理器跟随上游,可能只需拉取更新;如果是手动复制的副本,需要重新复制。具体以 Apify 官方 agent-skills 仓库当前的更新说明为准。

5. 这个 Skill 会修改我已有的项目文件吗?

Skill 本身是指令集,不会主动改写项目。但如果 Agent 在执行抓取任务时被授予文件写入权限,并生成结果文件或脚本,可能会在工作目录中新建文件。可以在执行前确认输出路径。

6. 可以和普通爬虫库一起用吗?

可以。该 Skill 侧重通过 Apify Actor 完成抓取,如果需要本地自定义逻辑,可以在生成的方案里结合 Playwright、Puppeteer 等库。两者并不冲突,取决于任务规模和是否愿意依赖第三方平台。

7. 抓取的数据会存在哪里?

抓取结果通常先经过 Apify 平台处理,可能存储在 Apify 的存储中,再由 Agent 取回整理。数据最终落地位置取决于你使用的 Actor 和后续处理步骤,涉及敏感数据时应提前确认存储与合规安排。

Skill 更新日志

版本列表
无版本号
docs(skills):移除 actor 开发 user agent Co-authored-by: Cursor
无版本号
docs(skills):保持 Apify user agent 不带版本号 Co-authored-by: Cursor
无版本号
docs(skills):使 Apify 调用指南可量化 Co-authored-by: Cursor
无版本号
feat(ultimate-scraper):为 CLI 调用添加 --user-agent 标签以进行遥测归因 在 apify-ultimate-scraper skill 中的每个 apify CLI 示例(SKILL.md、gotchas.md、actor-index.md 以及四个工作流指南文件)中添加 --user-agent apify-agent-skills/apify-ultimate-scraper, 并在 SKILL.md 中添加一条顶层规则以记录该约定。由于该标志是在 apify/apify-cli#1102 中引入的,将 CLI 前置要求提升至 v1.5.0+。 这使我们能够通过 properties.userAgent 在 Mixpanel/Segment 中区分 由 skill 驱动的 CLI 调用与普通人工使用,并与现有的 apify-agent-skills/ 命名约定保持一致,该约定用于 actor_run.meta_user_agent 数据,为 dashboards.apify.com/dashboards/276 提供数据。 Refs: apify/apify-cli#1102 Co-Authored-By: Claude Opus 4.7 (1M context)
无版本号
fix:恢复成本估算并附粗略估算免责声明 恢复上一个提交中移除的所有成本估算。在 gotchas.md 成本估算协议中添加 强制性免责声明:agent 必须始终将估算呈现为粗略指导,并警告 实际成本可能显著不同。这解决了准确性 问题,同时保持估算作为粗略信号的有用性。 Co-Authored-By: Claude Opus 4.6 (1M context)
无版本号
fix:处理 PR 审查反馈(Dusan) 1. 删除 docs/superpowers/(specs/plans 不应属于仓库) 2. 移除运行前认证检查(apify info)——在失败时以响应式方式处理认证, 而不是在每次运行前检查。添加 .env 文件加载作为认证选项。 3. 在 SKILL.md 中的所有 CLI 命令示例中添加 2>/dev/null,以防止 stderr 与 JSON 输出混合(会导致解析器中出现 JSONDecodeError) 4. 从工作流指南中删除所有美元金额成本估算(在测试中偏差达 4 倍)。 在 gotchas.md 中保留定价模型认知(FREE/PPE/FLAT), 但不包含具体金额。 Co-Authored-By: Claude Opus 4.6 (1M context)
无版本号
feat:用错误恢复、反机器人指南、平台速率限制丰富 gotchas
无版本号
feat:添加 4 个新工作流指南(电子商务、联系人、RAG、公司研究) 为 combined-patterns.md 研究中确定的 4 个新类别添加工作流参考指南:电子商务价格监控(模式 45-49)、联系人丰富(50-52)、知识库和 RAG 管道(53-55)以及公司研究(56-58)。每个指南遵循现有格式,包含 When/Pipeline/Output fields/Cost estimate/Gotcha 部分。 Co-Authored-By: Claude Sonnet 4.6
无版本号
feat:用研究模式丰富 social-analytics、trend-research、jobs、real-estate 工作流指南 根据研究模式为每个指南添加 2 个管道:Instagram 竞争对手 分析 + LinkedIn 公司页面分析(社交);Reddit 趋势挖掘 + YouTube 异常发现(趋势);销售信号外联 + Upwork 监控 (职位);线索评分/路由 + 建筑发现(房地产)。 Co-Authored-By: Claude Sonnet 4.6
无版本号
feat:用研究模式丰富 lead-gen、competitive-intel、influencer 工作流指南 向 lead-generation.md 添加了 3 个新管道(Sales Navigator 批量、SERP 发现、Apollo 破冰话术、Reddit 线索挖掘),向 competitive-intel.md 添加了 3 个(网站变更检测、SERP 位置监控、功能基准测试),向 influencer-vetting.md 添加了 3 个(TikTok 创作者审查、YouTube 频道审计、跨平台话题标签发现)。所有条目均包含明确的字段路径、PPE Actor 的成本估算以及每个管道的 gotchas。 Co-Authored-By: Claude Sonnet 4.6
无版本号
feat:丰富 brand-monitoring、review-analysis、content-and-seo 工作流指南 根据 combined-patterns 研究,在 3 个文件中添加了 7 个新管道: - brand-monitoring:Twitter/X 实时提及路由(P16)、Reddit 品牌监控(P17)、带情感分析的多平台社交聆听(P18) - review-analysis:竞争对手评论情报(P21)、Google Play 应用评论监控(P22)、多平台酒店业聚合(P20) - content-and-seo:SERP 内容简报生成(P23)、站点地图内容审计(P24)、带警报的关键词排名跟踪(P26)、深度研究 agent(P54) 所有管道均包含明确的管道字段路径、适用的 PPE 成本估算以及仅非显而易见的 gotchas。 Co-Authored-By: Claude Sonnet 4.6
无版本号
refactor:精简 SKILL.md,添加 4 个新工作流路由 移除错误处理表(将非显而易见的错误移至 gotchas.md), 为电子商务、联系人丰富、知识库/RAG 和公司研究添加 4 个新路由行,并用简短的故障排除指引替换错误部分。 Co-Authored-By: Claude Sonnet 4.6
无版本号
feat:将 skills 迁移到 CLI + 添加设计文档 - 在所有 skills 中标准化为 OAuth 优先认证 - 修复 actorization 中的安全矛盾(移除 -t 标志) - 删除旧版 Node.js 脚本(由 CLI 命令替代) - 将版本提升至 2.0.0 - 添加设计规范和实现计划 Co-Authored-By: Claude Opus 4.6 (1M context)
无版本号
refactor:用三层渐进式披露路由重写 SKILL.md
无版本号
feat:为内容/SEO、社交分析、趋势、职位、房地产添加工作流指南
无版本号
feat:为 lead-gen、competitive-intel、influencer、brand、reviews 添加工作流指南
无版本号
refactor:用精简查找替换单体 actor 索引 + 添加 gotchas
无版本号
feat:将仓库简化为 3 个核心 skills,移除 mcpc 和插件基础设施 移除与通用 scraper 重复的领域特定 skills(audience-analysis、brand-monitoring 等)。 剥离插件清单、marketplace JSON、CI 工作流和版本提升逻辑。仅保留 apify-ultimate-scraper、 apify-actor-development 和 apify-actorization。 Co-Authored-By: Claude Opus 4.6 (1M context)
无版本号
从 apify-ultimate-scraper 中移除 mcpc 依赖 将 mcpc CLI 调用替换为直接调用 Apify REST API 的零依赖 Node.js 脚本。 这消除了安装 @apify/mcpc 的需要。 - 添加 fetch_actor_details.js(调用 /v2/acts/ 和 /v2/acts/builds/) - 添加 search_actors.js(调用 /v2/store 搜索端点) - 更新 SKILL.md:移除 mcpc 前置要求,更新命令,向第 3 步添加 skip-for-simple-lookups 和成本安全指南 - 移除 mcpc 错误处理条目 Co-Authored-By: Claude Opus 4.6 (1M context)
无版本号
docs:在 SKILL.md 前置要求中添加明确的 @apify/mcpc 包名 AI agent 在仅看到前置要求中的 "mcpc" 时,会幻觉出诸如 "anthropic/mcpc" 之类的错误包名。 更新了所有 9 个 SKILL.md 文件,加入明确的安装命令:npm install -g @apify/mcpc Co-Authored-By: Claude Opus 4.5
无版本号
feat:向 ultimate-scraper 添加 Apify Store 搜索命令 添加 mcpc search-actors 命令,作为发现不在精选 55 个 Actor 列表中的 Actor 的回退方案。 当找不到合适的 Actor 时,用户现在可以直接搜索整个 Apify Store。 将 skill 从 1.2.0 提升至 1.3.0,marketplace 从 1.4.0 提升至 1.5.0, plugin 从 1.4.0 提升至 1.5.0。 Co-Authored-By: Claude Opus 4.5
无版本号
feat:添加 apify-ultimate-scraper 统一 skill 将所有 8 个现有 Apify skills(55 个 Actor)整合为一个 AI 驱动的 通用 scraper,支持 Instagram、Facebook、TikTok、YouTube、Google Maps、 Google Search、Google Trends、Booking.com 和 TripAdvisor。包括按平台和用例选择 Actor、 多 actor 工作流示例以及建议的后续操作。 将 marketplace 版本从 1.2.11 提升至 1.3.0,plugin 版本从 1.2.9 提升至 1.3.0, 新 skill 版本从 1.0.0 提升至 1.1.0(新功能的小版本提升)。 Co-Authored-By: Claude Opus 4.5

暂无评论

none
暂无评论...