用途:liberate 通过驱动 data-liberation CLI,把网站检查或搬取为可独立运行的 HTML 站点副本。交付物是一个目录,包含保留的路由及其 CSS、媒体、字体、导航、同页锚点和响应式行为,并把引用改写为指向副本内部。该目录本身即交付物,可直接在任何地方托管。
主要能力:
- inspect <url>:有边界的只读源站评估,明确覆盖范围与未知项。
- <url>:识别平台、发现路由、逐一路由搬取并写出站点。
- compare <run-dir>:对照在线源站验证副本,作为验收闸门;分两层:离线自洽性检查所有路由(毫秒级、无需浏览器和网络),浏览器源站保真度抽样检查(每个约 25 秒,覆盖入口页及若干路由)。退出码 0 表示通过,1 表示需报告。
- publish <run-dir> --to <target>:把副本发布到线上 URL。
使用方式:运行 data-liberation <url> 后输出两行摘要,如“Liberated 12/12 routes (3 reused)”和站点路径;运行目录为路径去掉 website。--output <dir> 指定落点(默认 ~/data-liberation/<host-slug>)。--resume 复用磁盘上已有内容并报告为 reused,重跑已搬取的站点时应加上;不加则重新抓取。--screenshots 生成桌面和移动端 PNG。应保持 fluid learning 开启,使副本像源站一样流式重排而非固定在某一宽度。验证用 data-liberation compare <run-dir>,可加 --screenshots 写出源站、副本和差异 PNG;像素分数仅供人参考,通过与否由具名检查决定。需要线上 URL 时运行 publish;省略 --to 时默认 spacefast,指定不存在的目标会列出已注册目标。
报告时须给出:CLI 摘要中的路由搬取、复用、失败数;各宽度的 compare 结果并原样引用失败文本;diagnostics.json 中非空的键并按名计数,值得关注的键包括 failures、resourceFailures、unresolvedDependencies、unresolvedMedia、unresolvedAnchors、interactionFailures、excludedRoutes、duplicateRoutes。
运行产物:website/(交付物)、capture-receipt.json(源 URL、路由表、资源、profile)、diagnostics.json(源站未提供或抓取未能解析的内容)、source-profile.json(测量行为,如单文档或按设备、声明式或运行时几何、切换宽度)。
限制与注意:若 compare 报告的已比较路由少于已抓取路由,说明源站保真度是抽样,应如实说明而非称整站已验证。发布时匿名目标的空间默认私有,live URL 在授权前返回 403,须把 claim 链接及其截止时间完整告知操作者;可用 --token 或目标的 token 环境变量(如 SPACEFAST_TOKEN)发布到已有账户。发布读取磁盘内容,修复后的副本或换目标无需再次访问源站。--serve 会保持本地服务器直到中断,仅在有人等待浏览时使用。其余如具体收费、价格、平台数量等暂未提供。