Faça o download de todas as páginas ligadas em uma página em uma determinada região

1

Eu gostaria de fazer o download da minha página de atividades dos usuários deste Unix & Linux com wget e todas as páginas que estão ligadas na lista de atividades.

Eu tentei

wget -m -l 2 

que deve espelhar o site de forma recursiva, mas apenas no máximo um nível em profundidade de recursão, mas essa não é uma boa solução. especialmente a folha de estilo não é baixada corretamente.

Existe uma solução que também baixe todos os CSS e imagens necessários e mantenha os links entre essas questões localmente intactos? Uma solução perfeita seria se as perguntas baixadas fossem exibidas com tudo intacto, ou seja, comentários etc.

    
por rubo77 07.11.2014 / 04:34

2 respostas

1

Algo assim com httrack fará o que você deseja.

$ httrack \
    'http://unix.stackexchange.com/users/20661/rubo77?tab=activity&sort=all' \
    -* +*question* -r2

Isso não passará da primeira página de paginação dessa página. Você provavelmente poderia modificá-lo para que pudesse. Também pode ser colocado em loop pelas páginas de paginação.

Os downloads acima 2 níveis ( -r2 ) e ignora todas as páginas que não incluem o caminho *question* .

Comentário sobre essa abordagem

Com esse tipo de download, você provavelmente terá que executar um comando mais complexo algumas vezes para determinar se obteve tudo o que é necessário para manter as páginas localmente. Não se preocupe, você pode continuar rodando o httrack no mesmo diretório e ele irá detectar que ele já baixou várias partes e pulará-las ou atualizá-las quando apropriado.

OBSERVAÇÃO: este é um subproduto da abordagem que usamos, onde excluímos tudo explicitamente com o -* e, em seguida, adicionamos seletivamente as coisas de volta com +... . Você sempre pode aumentar a rede e informar httrack para fazer o download mais, mas você também terá muito mais dados.

Iterando o download

Por exemplo, aqui estou executando várias vezes à medida que identifico outros arquivos que quero que sejam desativados.

executar # 1
$ httrack \
    'http://unix.stackexchange.com/users/20661/rubo77?tab=activity&sort=all' \
    -* +*question* +*sstatic.net* -r2 

There is an index.html and a hts-cache folder in the directory 
A site may have been mirrored here, that could mean that you want to update it
Be sure parameters are ok

Press <Y><Enter> to confirm, <N><Enter> to abort
Y
Mirror launched on Fri, 07 Nov 2014 14:01:35 by HTTrack Website Copier/3.48-19 [XR&CO'2014]
mirroring http://unix.stackexchange.com/users/20661/rubo77?tab=activity&sort=all -* +*question* +*sstatic.net* with the wizard help..
Done.: unix.stackexchange.com/questions/163334/connecting-to-irc-and-log-all-conversations (62646 bytes) - OK
Thanks for using HTTrack!
executar # 2
$ httrack \
    'http://unix.stackexchange.com/users/20661/rubo77?tab=activity&sort=all' \
    -* +*question* +*sstatic.net* +*googleapis* -r2 

There is an index.html and a hts-cache folder in the directory 
A site may have been mirrored here, that could mean that you want to update it
Be sure parameters are ok

Press <Y><Enter> to confirm, <N><Enter> to abort
Y
Mirror launched on Fri, 07 Nov 2014 14:03:05 by HTTrack Website Copier/3.48-19 [XR&CO'2014]
mirroring http://unix.stackexchange.com/users/20661/rubo77?tab=activity&sort=all -* +*question* +*sstatic.net* +*googleapis* with the wizard help..
Done.: unix.stackexchange.com/questions/163334/connecting-to-irc-and-log-all-conversations (62646 bytes) - OK
Thanks for using HTTrack!

Acima, identifiquei que o Stack Exchange faz uso do GoogleAPI, por isso precisei adicioná-lo à cadeia de filtros para que httrack saiba que também baixe arquivos desse site.

Eu geralmente uso grep para procurar nos arquivos para ter certeza de que tenho tudo, ou uso o recurso "ver fonte" do meu navegador para ver quais URLs ainda vêm de outros sites, em comparação com o meu sistema local.

OBSERVAÇÃO: você pode abrir os downloads resultantes no Chrome, usar o file:///path/to/httrack/download/index.html e navegar pelo conteúdo.

Referências

por 07.11.2014 / 06:15
0

você pode usar um software chamado black widow : sua GUI e ele irá baixá-lo para hardrive

Black Widow

    
por 07.11.2014 / 20:22