wget tiene la opción de -np
deshabilitar la obtención de archivos desde cualquier directorio padre. Necesito algo similar pero un poco más flexible. Considerar:
www.foo.com/bar1/bar2/bar3/index.html
Me gustaría obtener todo pero no "más alto" (en la jerarquía del árbol) que bar2
(!). Por bar2
lo tanto , también debe buscarse pero no bar1
.
¿Hay alguna manera de hacer que wget sea más selectivo?
Antecedentes: estoy tratando de reflejar un sitio web, con una estructura lógica similar: punto de partida, luego hacia arriba y luego hacia abajo. Si hay otra herramienta que wget
, más adecuada para ese diseño, házmelo saber también.
Actualizar
O en lugar de especificar una posible profundidad, tal vez algo así como "sin padres, a menos que coincidan con esta o aquella URL".
Actualización 2
Hay alguna estructura en el servidor, ¿verdad? Puedes visualizarlo como un árbol. Entonces, normalmente con "--no-parent" comienzas desde algún punto A y bajas solo.
Mi deseo es la capacidad de subir: expresado al decir que está permitido subir a los nodos X, o (que es 100% equivalente) que está permitido subir al nodo B (donde la distancia BA = X).
En todos los casos, las reglas para bajar permanecen tal como fueron definidas por los usuarios (por ejemplo, baje solo por niveles Y).
¿Cómo almacenarlo? En realidad, no es la cuestión realmente: wget
de forma predeterminada, recrea la estructura del servidor, no hay nada que temer aquí, o no hay necesidad de arreglar nada. Entonces, en 2 palabras, como siempre.
Actualización 3
Estructura de directorio a continuación: supongamos que en cada directorio solo hay un archivo, en R - R.html, etc. Esto se simplifica, por supuesto, porque puede tener más de una página.
R
/ \
B G
/ \
C F
/ \
A D
/
E
A (A.html) es mi punto de partida, X = 2 (por lo que B es el nodo de nivel más alto que me gustaría buscar). En este ejemplo particular, esto significa buscar todas las páginas excepto R.html y G.html. A.html se llama "punto de partida" porque tengo que comenzar desde él, no desde B.
Actualización 4
La denominación se utiliza desde la Actualización 3.
wget OPTIONS www.foo.com/B/C/A/A.html
La pregunta es cuáles son las opciones para obtener todas las páginas del directorio B e inferior (sabiendo que debe comenzar desde A.html).
bar2
directorio y todo su contenido. Si no es así, por favor aclare.
bar2
ir a buscar pero nobar1
? ¿Dóndebar2
va a residir? ¿Qué sucede si dos o más directorios que no desea tienen subdirectorios con nombres idénticos? ¿Deberían fusionarse sus contenidos? Es casi seguro que sea más fácil obtener todo el maldito sitio y luego podar / mover las cosas como lo desee.