PagePack
Маленькая и кривая утилита на языке Lua которая просто получает HTML страницу, находит в ней пути до файлов ресурсови встраивает их в HTML, утилита не делает полноценный разбор страницы, а лишь находит шаблоны для замены ссылок на содержание ссылок. Слишком “умные” страницы могут ломаться.
Встраиваются ресурсы
- css-стили (как есть)
- скрипты (как есть)
- изображения (
base64кодирование, в том числе изCSS) - шрифты (
base64кодирование, в том числе изCSS) - видео (
base64кодирование) - аудио (
base64кодирование)
на выходе получается независимая от внешних файлов HTML страница
Не используйте вашу домашнюю директорию и любую в котрой есть чувствительные данные в качестве рабочей, так как файлы относительно рабочей директории будут рассматриваться как возможные для встраивания в результатирующий файл если относительные ссылки в веб странице ссылаются на них. Будте бдительны пжалста
Зависимости
Любая версия Lua и утилита curl (опциональная)
LuajitLua5.1Lua5.2Lua5.3Lua5.4Lua5.5
sudo apt install lua curl
Установка и удаление
Глобально
sudo make install
sudo make uninstall
Локально
make PREFIX=$HOME/.local install
make PREFIX=$HOME/.local uninstall
Независимо
make DESTDIR=$HOME/some_you_dir install
make DESTDIR=$HOME/some_you_dir uninstall
Использование
# Только локальные файлы
pagepack /путь/до/файлов/данные.html результа.html -nd -v
# Сначала локальные, если их нет попытка взять внешние
pagepack -i /путь/до/файлов/данные.html -o результа.html -v
# Сначала внешние, если их нет то попытка взять локальные
pagepack https://example.com -o результат.html -fe -v
Логика внешнее/локальное работает только для относительных ссылок Дополнительная информация в справке pagepack --help