Manualinux
http://www.nvu.com http://www.gimp.org InicioPresentaciónActualizacionesManualesDescargasNoticiasAgradecimientoEnlaces

Entornos GráficosAplicaciones

DesarrolloEmuladoresInternetJuegosMultimediaSistema

Clientes BitTorrent - qBittorrent

Capturadores de Webs - HTTrack




Capturadores de Webs - HTTrack




Copyright

Copyright © José Luis Lara Carrascal  2007-2023   http://manualinux.es



Sumario

Introducción
Instalación
Iniciamos HTTrack
gHTTrack
Traducción al Español de gHTTrack
Iniciamos gHTTRack
Paquetes binarios de gHTTrack
Enlaces



 
Introducción  


Hace unos años en la revista PC ACTUAL venía una comparativa de programas capturadores de webs, lo sorprendente de los resultados de la misma era que el programa gratuito analizado superaba en prestaciones a los en teoría superiores y por lo tanto de pago. Su nombre era WinHTTrack y era y sigue siendo la versión para Windows de HTTrack, uno de los mejores (para mí el mejor) programas capturadores de webs que existen hoy en día en lo que respecta a este tipo de software. Las diferencias entre la versión Windows y la de GNU/Linux residen, como casi siempre, en la interfaz gráfica, en GNU/Linux usa una interfaz web, que requiere de la ejecución de un navegador, denominada WebHTTrack, aunque también se puede ejecutar en modo texto. Para aquellos usuarios que no les haga mucha gracia tener un navegador ejecutándose (por ejemplo Firefox) también trataremos de la instalación de una interfaz gráfica GTK denominada gHTTrack, aunque ésta no esté traducida al español.



Instalación  

Dependencias

Herramientas de Compilación


Entre paréntesis la versión con la que se ha compilado HTTrack para la elaboración de este documento.

* GCC - (13.2.0) o Clang - (16.0.6)
* Gawk - (5.2.2)
* M4 - (1.4.19)
* Libtool - (2.4.7)
* Make - (4.4.1)
* Automake - (1.16.5)
* Autoconf - (2.71)

Librerías de Desarrollo

* OpenSSL - (1.1.1v)
* Zlib - (1.3)



Descarga

httrack-3.49.2.tar.gz

Optimizaciones

$ export {C,CXX}FLAGS='-O3 -march=znver3 -mtune=znver3'

Donde pone znver3 se indica el procesador respectivo de cada sistema seleccionándolo de la siguiente tabla:
Nota informativa sobre las optimizaciones para GCC
* La opción '-march=' establece el procesador mínimo con el que funcionará el programa compilado, la opción '-mtune=' el procesador específico para el que será optimizado. 

* Los valores separados por comas, son equivalentes, es decir, que lo mismo da poner '-march=k8' que '-march=athlon64'.

* En versiones de GCC 3.2 e inferiores se utiliza la opción '-mcpu=' en lugar de '-mtune='.
Nota informativa sobre las optimizaciones para Clang
* La opción '-mtune=' está soportada a partir de la versión 3.4 de Clang.

* Los valores de color azul no son compatibles con Clang.

* Las filas con el fondo de color amarillo son valores exclusivos de Clang y, por lo tanto, no son aplicables con GCC.
Valores CPU
Genéricos
Intel
AMD

Optimizaciones adicionales

Optimizaciones adicionales
GCC
Graphite
$ export {C,CXX}FLAGS+=' -ftree-loop-linear -floop-strip-mine -floop-block'
IPA
$ export {C,CXX}FLAGS+=' -fipa-pta'
LTO
$ export {C,CXX}FLAGS+=' -fuse-linker-plugin -flto=auto'
En versiones inferiores a GCC 10, sustituir auto por el número de núcleos que tenga nuestro procesador. Si sólo tiene uno, utilizar el parámetro -flto
Clang
Polly
$ export {C,CXX}FLAGS+=' -O3 -mllvm -polly -mllvm -polly-vectorizer=stripmine'
LTO
$ export {C,CXX}FLAGS+=' -flto'
ThinLTO
$ export {C,CXX}FLAGS+=' -flto=thin'
La aplicación de esta optimización es alternativa a la tradicional LTO, a partir de Clang 3.9 y, por lo tanto, no es combinable con la misma.

Parámetros adicionales

Parámetros adicionales de eliminación de avisos en el proceso de compilación
$ export {C,CXX}FLAGS+=' -w'

Establecer la ruta de búsqueda de directorios de librerías en sistemas de 64 bits multiarquitectura
$ export LDFLAGS+=" -L/usr/lib64 -L/usr/local/lib64 -L/opt/gcc13/lib64"
Cada usuario tendrá que establecer la ruta de búsqueda de directorios, en función de la distribución que utilice.

Establecer el uso de enlazador dinámico para Mold
$ export LDFLAGS+=' -fuse-ld=mold'

Establecer el uso de enlazador dinámico para LLD
Clang
$ export LDFLAGS+=' -fuse-ld=lld'
Optimizaciones complementarias LTO/ThinLTO de LLD
$ export LDFLAGS+=' -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt'
Optimizaciones complementarias LTO de LLD
$ export LDFLAGS+=" -Wl,--lto-partitions=$(nproc)"
Optimizaciones complementarias ThinLTO de LLD
$ export LDFLAGS+=" -Wl,--thinlto-jobs=$(nproc)"
Modificar el script de Libtool incluido en el paquete para poder hacerlo compatible con LLD
$ lld-libtool
Hacemos uso de la función de bash explicada en la sección del manual de Clang, para poder parchear el script de Libtool incluido en el paquete, y poder llevar a cabo el proceso de compilación con LLD como enlazador dinámico.

Establecer la variable de entorno de uso de compilador para Clang
$ export CC=clang CXX=clang++

Extracción y Configuración  Bloc de Notas Información general sobre el uso de los comandos

$ tar zxvf httrack-3.49.2.tar.gz
$ cd httrack-3.49.2
$ ./configure --prefix=/usr --sysconfdir=/etc \
--disable-static --libdir=/usr/lib64

Explicación de los comandos

--prefix=/usr : Instala el programa en el directorio principal /usr.

--sysconfdir=/etc
: Le indicamos que utilice el directorio /etc para la ubicación del archivo de configuración, en lugar de /usr/etc.
--disable-static : Desactiva la compilación de las librerías estáticas, al no ser necesarias para la ejecución del programa.

--libdir=/usr/lib64
: Instala las librerías en /usr/lib64, en sistemas de 64 bits multiarquitectura. La ubicación y el nombre de este directorio, puede variar en función de la distribución que cada usuario use.

Compilación

$ make

Parámetros de compilación opcionales  

-j$(nproc): Establece el número de procesos de compilación en paralelo, en función del número de núcleos e hilos que tenga nuestro procesador, tomando como referencia la información mostrada por el sistema con el comando correspondiente. Si nuestro procesador es mononúcleo de un solo hilo, no añadir esta opción.

Instalación como root

$ su
# make install-strip
# ldconfig -v

Estadísticas de Compilación e Instalación de HTTrack

Estadísticas de Compilación e Instalación de HTTrack
CPU AMD Ryzen 5 5500
MHz 3593.250 (BoostMax=4457.000)
RAM 32 GB
Sistema de archivos XFS
Versión del Kernel 6.5.0-ml SMP PREEMPT_DYNAMIC x86_64
Modo de frecuencia de la CPU powersave (balance performance)
Versión de Glibc 2.38
Enlazador dinámico LLD 16.0.6
Compilador Clang 16.0.6
Parámetros de optimización -03 -march=znver3 -mtune=znver3 -mllvm -polly -mllvm -polly-vectorizer=stripmine -flto=thin -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt
Parámetros de compilación -j12
Tiempo de compilación 3"
Archivos instalados 216
Mostrar/Ocultar la lista de archivos instalados
Enlaces simbólicos creados 23
Mostrar/Ocultar la lista de enlaces simbólicos creados
Ocupación de espacio en disco 3,7 MB

Archivo de configuración personal

~/.httrack.ini Es el archivo de configuración personal de HTTrack en nuestro home.

Desinstalación como root

1) MODO TRADICIONAL

En el directorio de compilación ejecutamos el siguiente comando:

$ su -c "make uninstall"

2) MODO MANUALINUX

El principal inconveniente del comando anterior es que tenemos que tener el directorio de compilación en nuestro sistema para poder desinstalar el programa. En algunos casos esto supone muchos megas de espacio en disco. Con el paquete de scripts que pongo a continuación logramos evitar el único inconveniente que tiene la compilación de programas, y es el tema de la desinstalación de los mismos sin la necesidad de tener obligatoriamente una copia de las fuentes compiladas.

httrack-3.49.2-scripts.tar.gz

$ su
# tar zxvf httrack-3.49.2-scripts.tar.gz
# cd httrack-3.49.2-scripts
# ./Desinstalar_httrack-3.49.2

Copia de Seguridad como root

Con este otro script creamos una copia de seguridad de los binarios compilados, recreando la estructura de directorios de los mismos en un directorio de copias de seguridad (copibin) que se crea en el directorio /var. Cuando se haya creado el paquete comprimido de los binarios podemos copiarlo como usuario a nuestro home y borrar el que ha creado el script de respaldo, teniendo en cuenta que si queremos volver a restaurar la copia, tendremos que volver a copiarlo al lugar donde se ha creado.

$ su
# tar zxvf httrack-3.49.2-scripts.tar.gz
# cd httrack-3.49.2-scripts
# ./Respaldar_httrack-3.49.2

Restaurar la Copia de Seguridad como root

Y con este otro script (que se copia de forma automática cuando creamos la copia de respaldo del programa) restauramos la copia de seguridad como root cuando resulte necesario.

$ su
# cd /var/copibin/restaurar_copias
# ./Restaurar_httrack-3.49.2



Iniciamos HTTrack  Nota importante

Sólo nos queda teclear en una terminal o en un lanzador el comando webhttrack, y la interfaz web (en este caso Firefox) del programa aparecerá en la pantalla, también lo podemos usar en modo texto con el comando httrack


Captura WebHTTrack - 1


Captura WebHTTrack - 2


Captura WebHTTrack - 3




gHTTrack

Si no queremos usar una interfaz web, este programa cumple las mismas funciones. Desde el 21-05-2014 se incluye un paquete de código fuente modificado para que pueda cargar traducciones, además de la traducción al español correspondiente del programa.

Instalación

Dependencias

Herramientas de Compilación


Entre paréntesis la versión con la que se ha compilado gHTTrack para la elaboración de este documento.

* GCC - (13.2.0) o Clang - (16.0.6)
* Gawk - (5.2.2)
* M4 - (1.4.19)
* Libtool - (2.4.7)
* Make - (4.4.1)
* Intltool - (0.51.0)
* Automake - (1.16.5)
* Autoconf - (2.71)
* Gettext - (0.22)
* Pkg-config - (0.29.2)

Librerías de Desarrollo

* GTK+ - (2.24.33)



Descarga

ghttrack-0.5.2-ML.tar.xz

Firma Digital  Clave pública PGP

ghttrack-0.5.2-ML.tar.xz.asc

Verificar la firma digital del paquete

$ gpg --import manualinux.asc
$ gpg --verify ghttrack-0.5.2-ML.tar.xz.asc ghttrack-0.5.2-ML.tar.xz

Optimizaciones

Optimizaciones adicionales

Optimizaciones adicionales
GCC
Graphite
$ export {C,CXX}FLAGS+=' -ftree-loop-linear -floop-strip-mine -floop-block'
IPA
$ export {C,CXX}FLAGS+=' -fipa-pta'
LTO
$ export {C,CXX}FLAGS+=' -fuse-linker-plugin -flto=auto'
En versiones inferiores a GCC 10, sustituir auto por el número de núcleos que tenga nuestro procesador. Si sólo tiene uno, utilizar el parámetro -flto
Clang
Polly
$ export {C,CXX}FLAGS+=' -O3 -mllvm -polly -mllvm -polly-vectorizer=stripmine'
LTO
$ export {C,CXX}FLAGS+=' -flto'
ThinLTO
$ export {C,CXX}FLAGS+=' -flto=thin'
La aplicación de esta optimización es alternativa a la tradicional LTO, a partir de Clang 3.9 y, por lo tanto, no es combinable con la misma.

Parámetros adicionales

Parámetros adicionales de eliminación de avisos en el proceso de compilación
$ export {C,CXX}FLAGS+=' -w'

Establecer la ruta de búsqueda de directorios de librerías en sistemas de 64 bits multiarquitectura
$ export LDFLAGS+=" -L/usr/lib64 -L/usr/local/lib64 -L/opt/gcc13/lib64"
Cada usuario tendrá que establecer la ruta de búsqueda de directorios, en función de la distribución que utilice.

Establecer el uso de enlazador dinámico para Mold
$ export LDFLAGS+=' -fuse-ld=mold'

Establecer el uso de enlazador dinámico para LLD
Clang
$ export LDFLAGS+=' -fuse-ld=lld'
Optimizaciones complementarias LTO/ThinLTO de LLD
$ export LDFLAGS+=' -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt'
Optimizaciones complementarias LTO de LLD
$ export LDFLAGS+=" -Wl,--lto-partitions=$(nproc)"
Optimizaciones complementarias ThinLTO de LLD
$ export LDFLAGS+=" -Wl,--thinlto-jobs=$(nproc)"

Establecer la variable de entorno de uso de compilador para Clang
$ export CC=clang CXX=clang++

Extracción y Configuración  Bloc de Notas Información general sobre el uso de los comandos

$ tar Jxvf ghttrack-0.5.2-ML.tar.xz
$ cd ghttrack-0.5.2-ML
$ ./autogen.sh --prefix=/usr

Explicación de los comandos

--prefix=/usr : Instala el programa en el directorio principal /usr.

Compilación

$ make

Parámetros de compilación opcionales

Instalación como root

$ su -c "make install-strip"

Creación del archivo ghttrack.desktop

Para que gHTTrack sea detectado por los menús de entornos gráficos como XFce 4 o paneles como LXPanel o Fbpanel, creamos el archivo desktop correspondiente con cat o con un editor de texto:
 
$ cat > ghttrack.desktop << "EOF"
[Desktop Entry]
Name=gHTTrack
GenericName=Capturador de webs
Comment=Una interfaz GTK+ para HTTrack
Exec=ghttrack
Icon=httrack
Categories=Application;Network;WebBrowser
Type=Application
EOF

Luego, lo instalamos como root en /usr/share/applications. La desinstalación y respaldo de este archivo viene incluida en los scripts correspondientes proporcionados en este manual.

$ su -c "install -m644 ghttrack.desktop /usr/share/applications"

Estadísticas de Compilación e Instalación de gHTTrack

Estadísticas de Compilación e Instalación de gHTTrack
CPU AMD Ryzen 5 5500
MHz 3593.250 (BoostMax=4457.000)
RAM 32 GB
Sistema de archivos XFS
Versión del Kernel 6.5.0-ml SMP PREEMPT_DYNAMIC x86_64
Modo de frecuencia de la CPU powersave (balance performance)
Versión de Glibc 2.38
Enlazador dinámico LLD 16.0.6
Compilador Clang 16.0.6
Parámetros de optimización -03 -march=znver3 -mtune=znver3 -mllvm -polly -mllvm -polly-vectorizer=stripmine -flto=thin -Wl,--lto-aa-pipeline=globals-aa -Wl,--lto-newpm-passes=memcpyopt
Parámetros de compilación -j12
Tiempo de compilación 3"
Archivos instalados 34
Mostrar/Ocultar la lista de archivos instalados
Ocupación de espacio en disco 288 KB

Consumo inicial de CPU y RAM de gHTTrack

Consumo inicial de CPU y RAM de gHTTrack
Programa
CPU RAM
ghttrack 0 % 19,5 MB
Para medir el consumo de CPU se utiliza el programa top, y para medir el consumo de RAM se utiliza el script de Python, ps_mem.py, creado por Pádraig Brady, que podemos encontrar en este enlace.

Archivo de configuración personal

~/.ghttrack.cfg Es el archivo de configuración personal de gHTTrack en nuestro home.

Desinstalación como root

1) MODO TRADICIONAL

En el directorio de compilación ejecutamos el siguiente comando:

$ su -c "make uninstall"

2) MODO MANUALINUX  

ghttrack-0.5.2-ML-scripts.tar.gz

$ su
# tar zxvf ghttrack-0.5.2-ML-scripts.tar.gz
# cd ghttrack-0.5.2-ML-scripts
# ./Desinstalar_ghttrack-0.5.2-ML

Copia de Seguridad como root

$ su
# tar zxvf ghttrack-0.5.2-ML-scripts.tar.gz
# cd ghttrack-0.5.2-ML-scripts
# ./Respaldar_ghttrack-0.5.2-ML

Restaurar la Copia de Seguridad como root

$ su
# cd /var/copibin/restaurar_copias
# ./Restaurar_ghttrack-0.5.2-ML



Traducción al Español de gHTTrack

Descarga

gHTTrack_es-ML0.run

Firma Digital  Clave pública PGP

gHTTrack_es-ML0.run.asc 

Verificar la firma digital del paquete

$ gpg --import manualinux.asc 
$ gpg --verify gHTTrack_es-ML0.run.asc gHTTrack_es-ML0.run

Instalación como root

$ su -c " sh gHTTrack_es-ML0.run"



Iniciamos gHTTrack  

Sólo nos queda teclear en una terminal o en un lanzador el comando ghttrack, y el programa aparecerá en la pantalla.


Captura gHTTrack


Captura gHTTrack


Captura gHTTrack




Enlaces  


http://www.httrack.com >> La web de HTTrack.

http://home.hccnet.nl/paul.schuurmans/linux >> La web de gHTTrack.


Foro Galería Blog


Actualizado el 02-09-2023

Capturadores de Webs - HTTrack

Clientes BitTorrent - qBittorrent