用途:让用户对某个网站只做一次探索,就得到可重复运行的 Python 采集脚本,通过本地 Frevana 守护进程和已登录的 Chrome 扩展会话,抓取该站全部数据(如分页上的每条列表/商品/行)。注意:它只返回脚本,不运行脚本,也不直接返回数据;用户自行运行脚本以获取完整数据集或按计划运行。若只是要即时获取单个 URL 的数据,应改用 Authenticated Fetch 技能。
主要能力:运行基于 Chrome 扩展的 Frevana MCP 工具 frevana_generate,在用户已登录的 Chrome 中打开页面并记录站点自身的 XHR/API 流量,自动识别主要 JSON 数据端点、分页参数和字段(确定性,不用 LLM),返回一个抓取层为 frevana fetch 的 Python 脚本。采用三层回退:Layer 1(JSON API)为确定性采集器;Layer 1c(捕获模式,针对签名/SPA API,如小红书搜索/笔记)由 frevana explore 驱动页面、读取页面自身签名的响应并展平为 CSV;Layer 2(DOM)在无 JSON API 时返回 DOM 采集器,选择器默认提取链接并内嵌 HTML 样本;Layer 3 由用户依据样本收紧 ITEM、FIELDS 与分页配置。
使用方式:命令示例:bash <skill-path>/scripts/generate_collector.sh --url "https://example.com/products" --intent "all products with price and rating" --output ./collector.py;不加 --output 则打印到 stdout。生成的脚本保存为 .py 后,用 python3 运行产生 CSV;需先通过 bundled scripts/setup.sh 安装并运行 Frevana CLI,并保持 Chrome 扩展已连接(默认端口 12306)。
URL 列表模式:当用户已有网站 URL 列表(例如 Google Map Search 的 website 列)时,使用 scripts/extract_links.py 逐个访问并提取社交/联系链接,输出列 website、facebook_url、instagram_url、linkedin_url、twitter_url、email、status;可将 URL 写入 URLS 列表,或通过 --input 传入含 website 列的 CSV / 每行一个 URL 的 txt 文件,运行 python3 extract_links.py --output leads.csv。
限制:不要用此方式抓取 Google Maps 本身(反爬强,易被封),应先用 Google Map Search 技能获得地点列表再用本模式;覆盖率非 100%,部分站点 WAF 返回 HTTP 403,部分 Facebook 链接在 JS 渲染内容中,status 列会记录每行原因;脚本会自动重试瞬时连接问题。不要手写 Playwright/Puppeteer/Selenium 脚本或另开无头浏览器:Frevana Chrome 扩展即浏览器,持有登录会话,也只有它能产生合法签名请求。若生成脚本未返回数据,应通过收紧配置或改用捕获模式修复。下载文件卡片后需先保存到本地,再用绝对路径运行。