1 votos

¿Cómo añadir un temporizador entre las descargas de wget html?

Encontré este muy útil script que hace el trabajo para lo que estoy buscando lograr.

Se ha sacado de este post: Descarga por lotes de URLs desde un archivo .txt

Para utilizar el siguiente método, necesitará instalar wget. Crea un archivo con la extensión .sh en el mismo directorio que tu archivo que contiene los enlaces y añade este texto en él:

mkdir ~/Desktop/download

while read line; do wget -E -H --directory-prefix=/Users/username/Desktop/download -k -p $line; done < file.txt

cd ~/Desktop/download

Asegúrate de editar el script y cambiar el nombre de usuario por tu nombre de usuario Esto lee file.txt para las URLs y ejecuta el comando wget varias veces con todos los enlaces uno por uno y los guarda en una carpeta llamada download en su escritorio.

Sólo tengo que hacer una pequeña edición para asegurarme de que entre una solicitud y otra el script espera 5 minutos.

¿Podría decirme cómo editarlo?

1voto

wget puede leer URLs directamente desde un archivo ( -i file ), y sabe cómo hacer una pausa entre descargas ( -w seconds ), por lo que en realidad no se necesita un bucle en absoluto. También, wget descarga en el directorio actual por defecto, por lo que no es necesario --directory-prefix o bien.

Sólo corre

mkdir -p ~/Desktop/download
cd ~/Desktop/download
wget -E -H -k -p -w $((5*60)) -i file.txt

P.D.: También podría añadir --random-wait tener wget esperar entre 0,5 y 1,5 veces el número de segundos que hayas especificado. Esto podría ayudar a evitar problemas con los sitios que toman medidas extremas para detectar y bloquear wget peticiones.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X