Estoy tratando de duplicar un sitio web usando wget, pero no quiero descargar muchos archivos, así que estoy usando la --reject
opción de wget para no guardar todos los archivos. Sin embargo, wget seguirá descargando todos los archivos y luego eliminará el archivo si coincide con mi opción de rechazo.
¿Hay alguna forma de decirle a wget que no siga ciertos enlaces si coinciden con algún comodín de shell? Si wget no puede hacer esto, ¿hay algún otro comando de Linux común que pueda hacer esto?
linux
wget
mirror
mirror-site
Rory
fuente
fuente
Respuestas:
También puede probar HTTrack que tiene, IMO, una lógica de inclusión / exclusión más flexible e intuitiva. Algo como esto...
Las reglas se aplicarán en orden y anularán las reglas anteriores ...
fuente
Parece que esto no es posible en wget
fuente
Bajo la sección --reject de 'man wget':
"Tenga en cuenta que si alguno de los caracteres comodín, *,?, [O], aparece en un elemento de acclist o rejlist, se tratará como un patrón, en lugar de un sufijo".
Si está haciendo esto, es posible que desee dar ejemplos de los patrones que está utilizando y lo que cree que debería coincidir, y eso no. Dices que coinciden, pero ¿estás seguro?
Además, asegúrese de poner esta lista entre comillas, para que el shell no expanda esos comodines antes de pasar los argumentos a wget.
Incluso si su sistema no tiene la versión 1.12, lea la sección Tipos de archivos del manual aquí . Según el registro de cambios, el responsable agregó algunas advertencias:
fuente
Puede restringir el nivel de recursión con la
-l NUMBER
opción, si eso ayuda (no seguir un cierto patrón de expresiones regulares).Un nivel de descargas de "2" index.html, sus subsitios / imágenes / etc. y los enlaces en el subsitio.
fuente
¿Cómo usas wget? intenta usarlo de esta manera:
este comando ignorará los archivos gif y jpg y swf.
fuente
Una solución alternativa sería ejecutar wget a través de un servidor proxy. Configure su proxy para no permitir ciertos patrones. Esto evitaría que wget los descargue en primer lugar.
wget descargará y eliminará un archivo que coincida con el patrón -R. también puede coincidir con patrones, no solo extensiones o partes de nombres de archivos. Sin embargo, no impide que wget se descargue primero y se elimine más tarde.
httrack tiene algunas características agradables, pero en mi experiencia la forma en que guarda un "archivo" puede ser un poco peculiar, por ejemplo, si httrack se encuentra con index.asp? Type = BASIC & PAGEID = 2234234
puede guardarlo, pero debe decirle que conserve el archivo partes de la consulta,
por ejemplo,% h% p /% n% [TYPE: @TYPE = ::]% [PAGEID: PAGEID = ::].% t
the @ es un marcador de posición para un interrogación, puede cambiar el nombre de los archivos más tarde, o tal vez escapar de un signo de interrogación en su lugar? El problema es que.% t agregará un '.html' al final de su URI que originalmente no tenía un '.html'. Y si lo quita, las imágenes que httrack descargas carecerán de una extensión de archivo.
Mejor usar wget en mi humilde opinión
fuente