2009/2/2 Henrique Baggio <
hnrqbaggio@...>:
> Procurei um pouco na net sobre alternativas de fazer esse download em
> python, mas não consegui encontrar muita coisa útil. Tentei usar o módulo
> urllib, mas não consegui fazê-lo entender a url como um diretório, de forma
> a listar os arquivos dentro dele.
Oi, Henrique, não existe como "entender a url como um diretório" no
protocolo HTTP. Existe no FTP, mas no HTTP não existe um comando que
você possa enviar para o servidor dizer tudo o que tem num diretório.
> Apenas consegui baixar o conteúdo da
> página html usada pelo servidor para me mostrar a lista de arquivos.
Sim, se você enviar um GET para uma determinada URL, o servidor pode
te devolver uma listagem de arquivos. Mas isso depende de como o
servidor foi configurado. Não existe nenhuma obrigação, segundo o
protocolo HTTP, de que isso seja desta maneira.
> Claro que eu poderia fazer uma gambiarra e procurar os links dos arquivos
> pelo conteúdo do html
É assim exatamente que funciona o Wget recursivo.
> , mas gostaria de saber se existe alguma outra
> alternativa, se a linguagem me permite algo mais alto nível. =]
> Alguma idéia?
>
> [1]
http://linux.die.net/man/1/wgetProcure o wget para Windows (já te deram o link), ou faça um script
combinando urllib com alguma biblioteca mencionada neste excelente
post do über-guru Ian Bicking:
http://blog.ianbicking.org/2008/03/30/python-html-parser-performance/Se for criar sua própria solução, talvez seja legal dar uma lida na
especificação do HTTP, para sacar o que é possível esperar do
protocolo. A parte que fala dos métodos (comandos) fica aqui:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.htmlBoa sorte!
[ ]s
Luciano