¿Existe un wget paralelo? ¿Algo como fping pero solo para descargar?

¿Existe un wget paralelo? ¿Algo como fping pero solo para descargar?

Solo encontré puf (recolector de URL paralelo) pero no pude lograr que leyera las URL de un archivo; algo como

 puf < urls.txt

tampoco funciona.

El sistema operativo instalado en el servidor es Ubuntu.

Respuesta1

UsandoParalelo GNU,

$ paralelo -j${trabajos}wget <urls.txt

o xargsdeUtilidades de búsqueda de GNU,

$ xargs -n 1 -P${trabajos}wget <urls.txt

¿Dónde ${jobs}está el número máximo de wgetelementos que desea permitir que se ejecuten simultáneamente (configurando -npara 1obtener una wgetinvocación por línea urls.txt)? Sin -j/ -P, parallelejecutará tantos trabajos a la vez como núcleos de CPU (lo que no necesariamente tiene sentido para wgetestar vinculados a la red IO) y xargsse ejecutará uno a la vez.

Una característica interesante que parallelha terminado xargses mantener separada la salida de los trabajos que se ejecutan simultáneamente, pero si eso no le importa, xargses más probable que esté preinstalado.

Respuesta2

Respuesta3

Puedes implementar eso usando Python y la biblioteca pycurl. La biblioteca pycurl tiene la interfaz "multi" que implementa su propio bucle uniforme que permite múltiples conexiones simultáneas.

Sin embargo, la interfaz es más bien tipo C y, por lo tanto, un poco engorrosa en comparación con otros códigos más "Pythonic".

Escribí un contenedor que crea un cliente similar a un navegador más completo encima. Puedes usar eso como ejemplo. Ver elpycopia.WWW.clientemódulo. HTTPConnectionManager envuelve la interfaz múltiple.

Respuesta4

Parte de la página de manual de GNU Parallel contiene un ejemplo de un wget recursivo paralelo.

https://www.gnu.org/software/parallel/man.html#example-breadth-first-parallel-web-crawler-mirrorer

HTML se descarga dos veces: una para extraer enlaces y otra para descargar al disco. El resto del contenido solo se descarga una vez.

Si no necesita la respuesta del efeminismo de recursividad parece obvia.

información relacionada