用途:Scrapling 用于把网络抓取任务路由到最轻量可行的模式,避免一上手就启动浏览器。它先收集目标类型、期望输出、运行需求和约束(安装预算、浏览器可用性、认证/代理限制,以及是否更适合直接调用 API/JSON),再按规则选择路径:已有 HTML 用 Selector;需要实时页面用 Fetcher;客户端渲染内容用 DynamicFetcher;渲染路径仍被拦截或为空用 StealthyFetcher;任务涉及队列、链接跟随、重试或断点续爬时用 spiders。若真正需求是浏览器自动化、导航前请求拦截或托管解锁,则应诚实转出,不夸大 Scrapling 能力。
主要能力:本地 HTML 解析与 CSS/XPath 提取;HTTP 抓取与会话复用;动态浏览器渲染,支持 network_idle、wait_selector;隐身抓取,支持 headless、solve_cloudflare;自适应选择器,应对 DOM 漂移,adaptive=True 与 auto_save=True 为显式启用;CLI/交互 shell 操作面;MCP 供智能体访问;spiders 支持多页、并发、重试与 crawldir 检查点;针对科学文献/数据集的研究采集门禁脚本。
使用方式:先用 npx skills add https://github.com/akillness/jeo-skills --skill scrapling 注册插件,再按需安装包档位:bash scripts/install.sh --profile parser|fetchers|shell|ai|all。脚本默认同时执行两步,SKIP_SKILL=1 只装 Python 包,SKIP_PACKAGE=1 只注册插件;浏览器相关流程需执行 scrapling install,仅解析不需要。提取示例:bash scripts/run-extract.sh get "https://example.com" article.md --css-selector "article";MCP:bash scripts/run-mcp.sh 或 bash scripts/run-mcp.sh --http --host 127.0.0.1 --port 8000。文献/数据集目标先运行 python3 scripts/research_harvest_gate.py "https://arxiv.org/abs/2401.00001",该门禁仅用标准库,输出 ```review 围栏 JSON,标记 robots.txt 禁止/抓取延迟与疑似付费墙出版商,不代表已获授权。
适用场景:仅有 HTML 仅需选择器;普通文档、博客、营销页、搜索结果、简单商品页;SPA/仪表盘等 JS 渲染页面;返回挑战页的受保护目标;智能体需要受控网页提取;任务已演变为真正爬取;论文、数据集或引文来源。
限制:反机器人处理只是文档化能力,不保证成功;更强的代理或托管解锁可能仍需外部基础设施。直接 API/JSON 是真实数据源时应优先,不强行 DOM 抓取。自适应只解决选择器漂移,不解决认证失败或整站改版。必须尊重目标站点条款、robots、速率限制、授权与反滥用政策,门禁通过不等于授权。