O wget possui uma opção -np
que desativa a obtenção de arquivos de qualquer diretório pai. Eu preciso de algo semelhante, mas um pouco mais flexível. Considerar:
www.foo.com/bar1/bar2/bar3/index.html
Eu gostaria de obter tudo, mas não "mais alto" (na hierarquia da árvore) que bar2
(!). Portanto bar2
, também deve ser buscado, mas não bar1
.
Existe uma maneira de tornar o wget mais seletivo?
Antecedentes: estou tentando espelhar um site, com uma estrutura lógica semelhante - ponto de partida, depois para cima e para baixo. Se houver outra ferramenta wget
mais adequada para esse layout, informe-me também.
Atualizar
Ou, em vez de especificar uma possível profundidade, talvez algo como "sem pais, a menos que correspondam a esse ou aquele URL".
Atualização 2
Existe alguma estrutura no servidor, certo? Você pode visualizá-lo como uma árvore. Então normalmente com "--no-parent" você começa a partir de algum ponto A e desce apenas.
Meu desejo é a capacidade de subir - expressa por dizer: é permitido subir nós X, ou (o que é 100% equivalente) que seja permitido subir no nó B (onde a distância BA = X).
Em todos os casos, as regras para diminuir permanecem como foram definidas pelos usuários (por exemplo - diminuem apenas pelos níveis Y).
Como guardar? Na verdade, não é realmente a questão - wget
por padrão, recria a estrutura do servidor, não há nada a temer aqui ou não há necessidade de consertar nada. Então, em 2 palavras - como sempre.
Atualização 3
Estrutura de diretório abaixo - vamos assumir que em cada diretório existe apenas um arquivo, em R - R.html e assim por diante. Isso é simplificado, é claro, porque você pode ter mais de uma página.
R
/ \
B G
/ \
C F
/ \
A D
/
E
A (A.html) é meu ponto de partida, X = 2 (então B é o nó de nível superior que eu gostaria de buscar). Neste exemplo em particular, isso significa buscar todas as páginas, exceto R.html e G.html. A.html é chamado "ponto de partida" porque eu tenho que começar com ele, não com B.
Atualização 4
A nomeação é usada na Atualização 3.
wget OPTIONS www.foo.com/B/C/A/A.html
A questão é quais são as opções para obter todas as páginas do diretório B e abaixo (sabendo que é necessário iniciar a partir do A.html).
bar2
diretório e todo o seu conteúdo. Caso contrário, esclareça.
bar2
buscar, mas nãobar1
? Ondebar2
vai morar? E se dois ou mais diretórios que você não deseja possuem subdirets com nome idêntico, o conteúdo deles deve ser mesclado? É quase certamente mais fácil obter todo o maldito site e depois podar / mover as coisas como você deseja.