网页访问助手
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/web-access-xths。
技能介绍
先解决什么问题
很多页面只靠静态抓取并不可靠:内容在登录态后面,或者通过点击、滚动后才加载出来;静态层抓不到时,脚本又在遇到弹窗、风控和参数缺失时频繁失败。Web Access Assistant 把浏览器本身作为信息入口:直连用户日常使用的 Chrome / Edge / Chromium,利用已有登录态,在真实页面里看结构、做交互、提取目标内容。它关心的不是“把 HTML 拉下来”,而是能否完成用户定义的任务。
核心能力与工作方式
启动前会先检查 CDP 模式可用性,依赖 Node.js 22+ 提供的原生 WebSocket。脚本按退出码分流:exit 0 继续;exit 2 询问浏览器偏好并写入 config.env 的 WEB_ACCESS_BROWSER;exit 1 按 stdout 提示处理,能自动解决时不打扰用户。可通过 --browser 临时覆盖配置;切换浏览器时需要先停止常驻的 cdp-proxy.mjs 再重跑检查。检查通过后才会启动 CDP Proxy。
执行逻辑是目标导向的:先明确“什么算完成”,再按任务性质选择起点。搜索引擎和聚合平台用于发现信息,拿到 URL 后优先用 WebFetch 或 curl 读取原文;只有在需要登录态、页面交互、动态加载,或面对反爬平台时,才进入浏览器层。Jina 可作为可选预处理层,与 WebFetch / curl 组合,适合正文为主的页面,但可能损失非文章结构页面的信息。
进入浏览器层后,/eval 负责读取 DOM 和执行页面内逻辑,/click 负责真实点击,/scroll 触发懒加载,/new 与 /navigate 通过 POST body 接收完整 URL。页面内链接常带有会话参数,应保留完整地址,不要裁剪 token 等隐式依赖;/new 更适合并行打开多个页面,/click 适合同一页面内的串行操作。提取图片时先从 DOM 读取 URL,必要时再 /screenshot;视频则可用 /eval 控制播放、seek 与全屏,配合截图做离散采样。
代理直连用户浏览器,因此天然携带登录态。它会避免侵入用户已有 tab:操作都在后台新建的 tab 中进行,任务结束用 /close 清理,保留用户原有标签页。遇到登录墙时,先确认是否真的挡住了目标内容;只有确实无法获取且登录能解决,才提示用户在浏览器中登录,登录完成后直接刷新继续,无需重启代理。
适用边界与注意点
适合需要登录态、页面交互、动态加载或已知静态层无效的平台;轻量查询用 WebSearch / Jina 即可,不必启动浏览器。多个独立调研目标可以交给子 Agent 并行处理,每个子 Agent 自己创建和关闭 tab,共享同一个浏览器与 Proxy;主 Agent 应描述目标,而不是硬性规定“搜索”或“抓取”这类具体手段。
程序化操作速度快,但可能触发反爬;GUI 交互更像正常用户行为,确定性更高,适合作为受阻时的兜底。短时间内密集打开页面仍有风控风险。站点经验保存在 references/site-patterns/,匹配域名时先读取,但它只是带发现日期的提示;失败就回退通用模式,成功后再补充验证过的经验。信息核实要回到官网、官方文档、论文等一手来源,搜索引擎只负责定位。另外,Proxy 常驻运行,重启后通常需要浏览器重新授权 CDP 连接。
使用场景
- 站点内容需要点击展开或滚动加载,需要读取折叠区块和懒加载图片。
- 目标页面在登录墙后面,需要复用浏览器已有登录态获取完整内容。
- 多个独立调研目标需要同时查看,需要并行打开多个后台标签页。
- 页面结构不熟悉,需要先了解链接、表单和媒体分布再决定操作。
适合人员
- 需要调研竞品或政策的分析师,想直接访问官网原文和最新公告。
- 维护采集脚本的工程师,需要在登录态浏览器里复现真实用户操作。
- 研究用户行为的产品人员,想观察页面交互后的内容呈现和跳转逻辑。
- 做内容归档的编辑,需要从需要登录的公众号或社区页面提取资料。