_____ ______________ __________ ___________________ ___
| / | | | | | |
| _/ __ _| __ | | ___ ___ |__| |
| | | | | | | | | | | |
| | /| |__| _ |__| |____| | | | | __ |
| | ___/ | | | | | | | | |
|___| |__________| _____________________| |___| |___| |___|
El sueño de todo acaparador de datos hecho realidad: agrupar cualquier página web en un único archivo HTML. Finalmente puedes reemplazar ese millón de pestañas abiertas con un millón de archivos .html almacenados en algún lugar de tu pequeño y precioso disco.
A diferencia del método convencional "Guardar página como", monolith
no solo guarda el documento de destino, sino que también incorpora recursos CSS, imágenes y JavaScript al mismo tiempo , produciendo un único documento HTML5 que es un placer almacenar y compartir.
En comparación con guardar sitios web con wget -mpk
, esta herramienta incorpora todos los activos como URL de datos y, por lo tanto, permite a los navegadores representar la página guardada exactamente como estaba en Internet, incluso cuando no hay conexión de red disponible.
cargo install monolith
brew install monolith
choco install monolith
scoop install main/monolith
winget install --id=Y2Z.Monolith -e
sudo port install monolith
snap install monolith
guix install monolith
nix-env -iA nixpkgs.monolith
flox install monolith
pacman -S monolith
apk add monolith
xbps-install -S monolith
pkg install monolith
cd /usr/ports/www/monolith/
make install clean
cd /usr/pkgsrc/www/monolith
make install clean
docker build -t y2z/monolith .
sudo install -b dist/run-in-container.sh /usr/local/bin/monolith
Dependencias: libssl
, cargo
cargo -v
Si cargo aún no está instalado, instálelo y agréguelo a su $PATH
existente (parafraseando las instrucciones de instalación oficiales):
curl https://sh.rustup.rs -sSf | sh
. "$HOME/.cargo/env"
Continúe con la instalación desde la fuente:
git clone https://github.com/Y2Z/monolith.git
cd monolith
make install
Cada versión contiene archivos binarios prediseñados para Windows, GNU/Linux, así como plataformas con arquitectura de CPU no estándar.
monolith https://lyrics.github.io/db/P/Portishead/Dummy/Roads/ -o portishead-roads-lyrics.html
cat some-site-page.html | monolith -aIiFfcMv -b https://some.site/ - > some-site-page-with-assets.html
-a
: excluir fuentes de audio-b
: Usar custom base URL
-B
: Prohibir recuperar activos de dominios específicos-c
: excluir CSS-C
: leer cookies del file
-d
: permite recuperar activos solo de domain(s)
específicos-e
: ignorar errores de red-E
: guardar documento usando custom encoding
-f
: Omitir fotogramas-F
: excluir fuentes web-h
: imprime información de ayuda-i
: eliminar imágenes-I
: Aislar el documento.-j
: excluir JavaScript-k
: aceptar certificados X.509 (TLS) no válidos-M
: No agregue marca de tiempo ni información de URL-n
: extrae el contenido de los elementos NOSCRIPT-o
: escribe la salida en file
(use “-” para STDOUT)-s
: cállate-t
: ajusta network request timeout
-u
: proporciona custom User-Agent
-v
: excluir vídeos Las opciones -d
y -B
proporcionan control sobre qué dominios se pueden usar para recuperar activos, por ejemplo:
monolith -I -d example.com -d www.example.com https://example.com -o example-only.html
monolith -I -B -d .googleusercontent.com -d googleanalytics.com -d .google.com https://example.com -o example-no-ads.html
Monolith no cuenta con un motor JavaScript, por lo que los sitios web que recuperan y muestran datos después de la carga inicial pueden requerir el uso de herramientas adicionales.
Por ejemplo, Chromium (Chrome) se puede utilizar para actuar como preprocesador de dichas páginas:
chromium --headless --window-size=1920,1080 --run-all-compositor-stages-before-draw --virtual-time-budget=9000 --incognito --dump-dom https://github.com | monolith - -I -b https://github.com -o github.html
Configure las variables de entorno https_proxy
, http_proxy
y no_proxy
.
Abra un problema si algo anda mal, eso ayudará a mejorar este proyecto.
En la medida de lo posible según la ley, los autores han dedicado todos los derechos relacionados con los derechos de autor y derechos conexos de este software al dominio público en todo el mundo. Este software se distribuye sin ninguna garantía.