SuperAPI AI 工具集

scraperapi-cli

编程与开发

查看项目

更新于 10-16 01:09

技能介绍

用途:sapi 是 ScraperAPI 的命令行工具,适合已在终端里想立刻拿到结果、把抓取嵌入 Shell 管道(sapi … | jq …)、一次性定时任务(cron、launchd、systemd timer),或试探 --render、--premium 能否解开某目标,再决定是否写入应用代码。若在 Python、Node、PHP、Ruby、Java 中写应用逻辑,应改用对应 SDK。

安装与认证:npm install -g scraperapi-cli(需 Node.js 18+)。交互式配置用 sapi init;CI 或 Dockerfile 用 sapi init --api-key "$SCRAPERAPI_API_KEY"。Key 解析顺序为 --api-key 参数、SCRAPERAPI_API_KEY 环境变量、~/.config/scraperapi/config.json,CI 中建议用环境变量。

输出约定:stdout 输出数据,stderr 输出提示、警告和错误。stdout 不是 TTY(管道或重定向)时自动切换为 JSON;可用 --json 强制,用 --output html|markdown|text|json|csv 指定正文格式,--output 会覆盖自动 JSON 规则。

主要命令:sapi scrape <url> 同步抓取,支持 --render(+10 额度)、--premium(+10)、--ultra-premium(+30)、--screenshot(+10,JSON 中返回 base64)、--autoparse、--country、--device、--session、--wait-for、--timeout、--async 等;建议由默认 1 额度起步,失败再逐级升级,组合标志会叠加额度。sapi cost <url> 可在消耗额度前预览费用,接受与 scrape 相同参数(--async、--timeout 除外)。sapi jobs 处理异步与批量:scrape --async 返回 jobId,jobs list/get/cancel,jobs batch urls.txt 单文件最多提交 50,000 个 URL;超过约 100 个 URL 应改用批次以避免并发限制和 429。sapi structured 对 Amazon、Google(serp/news/jobs/shopping/maps)、Walmart、eBay、Redfin 返回稳定 JSON。sapi crawler 用 start/status/results 发现整站 URL,再将结果交给 jobs batch。sapi pipeline 驱动仪表盘配置的 DataPipeline 项目(list/run/status/results),CLI 不创建项目。sapi account 查看额度与密钥(keys list/create/revoke),运行大批任务前先确认额度;sapi config 设置 api_key、default_country、default_output_format、default_timeout 等持久默认值。

限制:任何错误都会以非零退出码退出,便于 set -e;sapi 不会对昂贵调用做交互确认。不要在应用代码里通过 Shell 调用 CLI,长循环抓取应使用 jobs batch,需要 webhook 交付的长期定时项目应使用 DataPipeline。目标站点被拦截时可按 --premium、--ultra-premium 逐级重试。具体参数全表与最新额度费用见 docs.scraperapi.com。