返回顶部
h

hilda-PuppeteerPuppeteer自动化

Automate Chrome and Chromium with Puppeteer for scraping, testing, screenshots, and browser workflows.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
100
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

hilda-Puppeteer

设置

首次使用时,请阅读 setup.md 了解集成指南。

使用场景

用户需要浏览器自动化操作:网页抓取、端到端测试、PDF生成、截图或任何无头Chrome任务。智能体负责页面导航、元素交互、等待策略和数据提取。

架构

脚本和输出文件位于 ~/puppeteer/ 目录下。结构说明请参见 memory-template.md。

~/puppeteer/
├── memory.md # 状态 + 偏好设置
├── scripts/ # 可复用的自动化脚本
└── output/ # 截图、PDF、抓取数据

快速参考

主题文件
设置流程setup.md
记忆模板
memory-template.md | | 选择器指南 | selectors.md | | 等待模式 | waiting.md |

核心规则

1. 操作前务必等待

导航后切勿立即点击或输入。务必等待元素出现: javascript await page.waitForSelector(#button); await page.click(#button);

不等待直接点击,90%的情况下会导致元素未找到错误。

2. 使用特定选择器

按以下优先级选择稳定的选择器:
  1. 1. [data-testid=submit] — 测试属性(最稳定)
  2. #unique-id — ID
  3. form button[type=submit] — 语义组合
  4. .class-name — 类名(最不稳定,经常变化)

避免使用:div > div > div > button — DOM结构稍有变动就会失效。

3. 显式处理导航

点击触发导航后,需等待页面加载: javascript await Promise.all([ page.waitForNavigation(), page.click(a.next-page) ]);

不这样做,脚本会在新页面加载完成前继续执行。

4. 设置合理的视口

始终设置视口以确保渲染一致性: javascript await page.setViewport({ width: 1280, height: 800 });

默认视口为800x600——许多网站会以不同方式渲染或显示移动端视图。

5. 处理弹窗和对话框

在对话框阻塞交互前将其关闭: javascript page.on(dialog, async dialog => { await dialog.dismiss(); // 或 dialog.accept() });

未处理的对话框会导致脚本卡死。

6. 出错时关闭浏览器

始终使用try/finally包裹: javascript const browser = await puppeteer.launch(); try { // ... 自动化代码 } finally { await browser.close(); }

泄漏的浏览器进程会消耗内存和端口资源。

7. 遵守速率限制

在请求之间添加延迟以避免被屏蔽: javascript await page.waitForTimeout(1000 + Math.random() * 2000);

频繁访问会触发验证码和IP封禁。

常见陷阱

  • - 对不可见元素执行 page.click() → 静默失败,应使用带 visible: true 参数的 waitForSelector
  • 对屏幕外元素截图 → 得到空白图片,需先滚动到可视区域
  • page.evaluate() 返回undefined → 无法返回DOM节点,只能返回可序列化数据
  • 网站屏蔽无头模式 → 使用 headless: new 或设置用户代理
  • 表单提交导致页面刷新 → 使用 page.waitForNavigation(),否则数据会丢失
  • Shadow DOM元素对选择器不可见 → 使用 page.evaluateHandle() 穿透影子根节点
  • Cookie未持久化 → 使用 userDataDir 启动以实现会话持久化

安全与隐私

数据本地存储:

  • - 所有抓取数据保存在 ~/puppeteer/output/ 目录
  • 浏览器配置文件保存在指定的 userDataDir 目录

本技能不会:

  • - 将抓取数据发送到任何地方
  • 存储凭据(您需在每个脚本中提供)
  • 访问 ~/puppeteer/ 目录外的文件

相关技能

如果用户确认,可使用 clawhub install 安装:
  • - playwright — 跨浏览器自动化替代方案
  • chrome — Chrome开发者工具和调试
  • web — 通用Web开发

反馈

  • - 如果觉得有用:clawhub star puppeteer
  • 保持更新:clawhub sync

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 hilda-puppeteer-1776014583 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 hilda-puppeteer-1776014583 技能

通过命令行安装

skillhub install hilda-puppeteer-1776014583

下载

⬇ 下载 hilda-Puppeteer v1.0.0(免费)

文件大小: 7.05 KB | 发布时间: 2026-4-13 10:33

v1.0.0 最新 2026-4-13 10:33
Initial release of hilda-puppeteer for browser automation.

- Automate Chrome/Chromium for scraping, E2E testing, screenshots, and PDF generation.
- Includes guidance on stable selectors, waiting patterns, rate limiting, and browser management.
- Organizes automation scripts and output in a dedicated directory structure.
- Addresses common Puppeteer pitfalls and browser automation best practices.
- Stores all data locally; no credentials or data sent externally.
- Lists related skills for extended web automation capabilities.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部