@junpenn/screenshot-cli
v0.1.2
Published
Local website screenshots and favicons using your installed browser
Maintainers
Readme
@junpenn/screenshot-cli
English | 简体中文
使用本机 Chrome/Chromium 截取网页、获取 favicon,支持 PNG、JPEG、WebP 和 JSON 输出。
需要 Node.js 22.12+,以及已安装的 Chrome/Chromium。
安装
npm i @junpenn/screenshot-cli
npx screenshot-cli --help也可以直接运行:npx @junpenn/screenshot-cli --help。
使用
# 截图
npx screenshot-cli screenshot https://example.com \
-o ./output/preview.webp --width 1600 --height 900 --clean
# 获取 favicon,自动保留原始图标格式
npx screenshot-cli favicon https://www.wikipedia.org \
--output-dir ./output/icons
# 同时获取截图和 favicon
npx screenshot-cli capture https://www.wikipedia.org \
--output-dir ./output/wikipedia --json已有文件默认不覆盖,添加 --force 可覆盖。
常用参数
| 参数 | 说明 |
| --- | --- |
| -o, --output | 单文件路径,不适用于 capture |
| --output-dir | 输出目录,默认 ./output |
| --format | png / jpeg / webp,默认 png;截图可由输出扩展名推断 |
| --width / --height | 视口尺寸,默认 1600 × 900 |
| --quality | JPEG/WebP 质量,默认 85 |
| --full-page | 整页截图 |
| --clean | 隐藏常见弹层和聊天挂件,停止 CSS 动画 |
| --hide | 隐藏指定 CSS 选择器,可重复 |
| --wait-for | 等待指定元素可见,可重复 |
| --delay | 额外等待毫秒数,默认 500 |
| --timeout | 超时毫秒数,默认 30000 |
| --headed | 显示浏览器窗口 |
| --wait-for-enter | 手动操作后回车继续,需要 --headed 和交互式终端 |
| --browser-path | 浏览器可执行文件路径,也可设置 BROWSER_PATH |
| --user-data-dir | 复用专用浏览器配置目录 |
| --force | 覆盖已有文件 |
| --json | 输出文件路径、图片尺寸和错误等 JSON 信息 |
--clean 仅匹配常见组件,其他元素可通过 --hide 指定。整页截图不会自动触发所有懒加载内容。
有头模式
npx screenshot-cli screenshot https://example.com \
--headed --wait-for-enter --user-data-dir ./profiles/demo \
-o ./output/manual.pngJSON 输出
--json 返回 success、screenshot、favicon 和 errors 等字段;图片结果包含绝对路径、格式、尺寸及字节数。
退出码:0 全部成功,1 失败。capture 部分失败时保留已生成的文件,并返回非零退出码。
