Como baixar lista de arquivos de um servidor de arquivos?

9

Como faço para baixar uma lista de arquivos de um servidor de arquivos como este link ?

Suponho que eu poderia usar o wget, mas ele tenta obter todos os links e o arquivo html também. Existe uma ferramenta melhor para conseguir isso?

    
por BinaryMisfit 26.09.2009 / 06:29

3 respostas

12

Você pode especificar quais extensões de arquivo wget serão baixadas ao rastrear páginas:

wget -r -A zip,rpm,tar.gz www.site.com/startpage.html

isso realizará uma pesquisa recursiva e fará o download apenas de arquivos com as extensões .zip , .rpm e .tar.gz .

    
por 26.09.2009 / 06:41
7

supondo que você realmente quer apenas uma lista dos arquivos no servidor sem buscá-los (ainda):

%> wget -r -np --spider http://www.apache.org/dist/httpd/binaries/ 2>&1 | awk -f filter.awk | uniq

enquanto 'filter.awk' se parece com isso

/^--.*--  http:\/\/.*[^\/]$/ { u=$3; }
/^Length: [[:digit:]]+/ { print u; }

então você possivelmente terá que filtrar algumas entradas como

"http://www.apache.org/dist/httpd/binaries/?C=N;O=D"
    
por 26.09.2009 / 06:36
0

Ref: link

Você pode usar o seguinte comando:

wget --execute="robots = off" --mirror --convert-links --no-parent --wait=5 <website-url>

Explicação com cada opção

  • wget : Simple Comando para fazer o CURL solicitar e baixar arquivos remotos para nossa máquina local.
  • --execute="robots = off" : isso irá ignorar o arquivo robots.txt durante o rastreamento pelas páginas. É útil se você não estiver recebendo todos os arquivos.
  • --mirror : Esta opção irá basicamente espelhar a estrutura do diretório para o URL fornecido. É um atalho para -N -r -l inf --no-remove-listing , o que significa:
    • -N : não recuperar arquivos novamente, a menos que seja mais recente que local
    • -r : especifique o download recursivo
    • -l inf : profundidade máxima de recursão (inf ou 0 para infinito)
    • --no-remove-listing : não remova arquivos '.listing'
  • --convert-links : fazer links em HTML ou CSS baixados para arquivos locais
  • --no-parent : não suba para o diretório pai
  • --wait=5 : aguarde 5 segundos entre as recuperações. Para que nós não debatemos o servidor.
  • <website-url> : este é o URL do site de onde fazer o download dos arquivos.

Download feliz: smiley:

    
por 19.06.2016 / 06:09