baixar arquivo da fonte da web, seletivamente

1

Se alguém já ouviu falar do Bukkit, você sabe que seus arquivos são geralmente de três tipos: Desenvolvimento, Beta e Realease. Clique ( aqui ) para exemplos. Eu preciso de um script que:

  • Faz um loop pelo diretório
  • Obtém a versão mais recente Stable (provavelmente tão simples quanto olhar o número da versão, pois eles têm uma convenção de nomenclatura simples; cada versão estável é sucedida por -Rx.0, enquanto as versões beta e de desenvolvimento são sucedidos por -Rx.x)

Depois disso, sei que precisarei usar wget para fazer o download do arquivo.

Nota: Se você está indo apenas para postar código, pelo menos me diga o que ele faz para que eu possa usá-lo mais tarde, se eu precisar

    
por KILL3RTACO 10.11.2012 / 22:21

2 respostas

1

A tarefa principal do script é descobrir qual desses links ele deve wget . Parsing páginas da web é realmente complicado. Eu não recomendaria bash para isso!

O Python é fácil de escrever em comparação e tem uma robusta biblioteca de análise de HTML chamada Beautiful Soup .

Uma vez que você "encurralou" o link, baixá-lo é trivial.

    
por Anko 12.11.2012 / 11:05
0

Demorei algum tempo para descobrir isso, mas aqui está;)

-c, caso você queira parar e começar de onde você a deixou

-r -A " -R [0-9] .0 ", obtém apenas arquivos que tenham no meio -Rx.0 e x pertencentes a {0,1, ... 9}

-np, significa que não há diretórios pai (combina com a opção -r)

-nd, não representa diretório

-e robots = off, desligue os robôs

Então, no seu caso, você faria algo como

wget -c -e robots=off -r -np -nd -A "*-R[0-9].0*" http://repo.bukkit.org/content/groups/public/org/bukkit/craftbukkit/

Não consigo acessar o site que você postou, mas acho que isso redireciona as coisas aqui.

    
por Presbitero 12.11.2012 / 18:28