SingleFile
SingleFile — это браузерное расширение для Firefox/Chrome и CLI инструмент для сохранения полной копии веб-страницы в один HTML файл.
Описание
SingleFile сохраняет веб-страницу со всеми ресурсами (CSS, изображения, шрифты) встроенными в один самодостаточный HTML файл.
Особенности
- Один файл: Вся страница в одном HTML файле
- Самодостаточность: Все ресурсы встроены
- Браузерное расширение: Удобное использование в браузере
- CLI версия: Для автоматизации
Установка
Браузерное расширение
Chrome/Chromium
- Откройте Chrome Web Store
- Нажмите "Установить"
Firefox
- Откройте Firefox Add-ons
- Нажмите "Добавить в Firefox"
CLI версия
npm install -g single-file-cli
Использование
Браузерное расширение
- Откройте страницу, которую хотите сохранить
- Нажмите на иконку SingleFile в панели инструментов
- Страница будет сохранена в один HTML файл
CLI версия
single-file https://example.com --output=page.html
С опциями
single-file https://example.com \
--output=page.html \
--remove-scripts \
--remove-frames \
--max-wait-time=5000
Сравнение с другими решениями
monolith
monolith — CLI инструмент для сохранения страницы в один HTML файл.
- Отличия: Только CLI, нет браузерного расширения
Obelisk
Obelisk — Go пакет и CLI для сохранения страницы в один HTML файл.
- Отличия: Написан на Go, только CLI
| Инструмент | Браузерное расширение | CLI | Язык | Рекомендация |
|---|---|---|---|---|
| SingleFile | ✅ | ✅ | JavaScript | Для большинства случаев |
| monolith | ❌ | ✅ | Rust | Для CLI использования |
| Obelisk | ❌ | ✅ | Go | Для Go проектов |
Best practices
Сохранение без скриптов
single-file https://example.com \
--output=page.html \
--remove-scripts
Сохранение с удалением фреймов
single-file https://example.com \
--output=page.html \
--remove-frames