Olá a todos,
Assino a lista há um bom tempo, mas acho que este é meu primeiro
e-mail. Sou autodidata e decidi que python é minha próxima linguagem a
aprender, mas tem me faltado um projeto útil sobre o qual trabalhar e
aprender ao mesmo tempo. Na verdade até já tenho um projetinho, mas
não sei por onde começar.
Antes de continuar, devo dizer que meu objetivo não é simplesmente
burlar um sistema de controle, muito menos utilizar as informações
somente para proveito próprio. Colo abaixo a descrição que fiz de um
script em bash, e postei no site VivaOLinux [1]:
"Muitas pessoas necessitam baixar o Diário Oficial da União com
regularidade, e o site da Imprensa Nacional não facilita muito as
coisas. No meu mundo perfeito haveria um servidor torrent oficial para
a divulgação, o que permitiria o download sem sobrecarregar a banda da
Imprensa Nacional, mas enquanto isso não acontece, disponibilizo um
pequeno script para permitir o download de forma facilitada."
O script em si é bastante simples, filtra o retorno de um wget e
extrai a quantidade de páginas de cada seção do Diário Oficial da
União, depois faz o download de página por página, em formato pdf, e
por fim junta tudo num só arquivo.
Acontece que, devido à utilização de cookies (acho eu), não me é
possível fazer tudo via bash, o script precisa iniciar uma sessão de
um browser em modo gráfico (no caso o Arora) para fazer o download das
páginas. Imagino que substituir essa gambiarra toda seria um ótimo
caso de uso para python que, parece-me, possui muitas bibliotecas para
fazer controle de sessões http.
Enfim, para não alongar mais ainda o e-mail, a questão é essa: alguém
pode me sugerir alguma lib (de preferência com exemplos) para iniciar
uma sessão http, com suporte a cookies (ou o que seja)? Tenho
facilidade de aprendizado, mas estou apanhando para achar o caminho
das pedras, já que não tenho muita experiência com protocolos de
controle de sessão em web, nem de OO e python :)
Qualquer ajuda será bem vinda, desde já agradeço e desejo uma boa
semana a todos.
Valtoir
[1] http://www.vivaolinux.com.br/script/Diario-Oficial-da-Uniao-Download-facilitado
Olá Valtoir
Já soube de outras pessoas que tiveram a mesma idéia que você mas não acompanhei o desfecho. Muito bacana a sua iniciativa, parabéns.
Bem quanto à biblioteca, eu penso que a que mais pode ajudar você nesse momento seria o mechanize [1]
Nesse mesmo link você encontra alguns exemplos que vão de encontro à suas necessidades.
A bibiloteca urllib2 [2] é uma outra alternativa mas esta um nível mais baixo que a mechanize. Entretanto vale a pena ver.
Um exemplo de uso com a urllib2 pode ser encontrado aqui [3]
Uma outra dica é se você pudesse publicar o código em um repositório aberto como o Gitub [4] ou Bitbucket [5] pois outras pessoas podem contribuir com o projeto =)
[1] http://wwwsearch.sourceforge.net/mechanize/
[2] http://docs.python.org/library/urllib2.html
[3] http://www.techniqal.com/blog/2008/07/31/python-file-read-write-with-urllib2/
[4] https://github.com
[5] https://bitbucket.org/
[ ]'s
Mauro Baraldi
--- Em python...@yahoogrupos.com.br, Valtoir <valtoirjardim@...> escreveu
Aproveitando que o Mauro comentou sobre a biblioteca mechanize, vai ai um
exemplo simples que tenho aqui para vc começar
http://pastebin.com/X34PtJWg
e segue a dica dele e coloca lá em um repositório aberto, e manda o link ai
Abraços, espero ter ajudado
Em 27 de setembro de 2011 10:08, mauro.baraldi
<no_r...@yahoogrupos.com.br>escreveu:
> **
--
Atenciosamente,
Herbert Hudson
<http://www.twitter.com/herbert_hudson><http://www.facebook.com/herberthudson>
<https://plus.google.com/113574220444989851802/about><http://www.orkut.com.br/Main#Profile?uid=14539463230972209993>
[As partes desta mensagem que não continham texto foram removidas]
------------------------------------
Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/python-brasil/
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@yahoogrupos.com.br
<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html
Acabei de responder um email sobre algo parecido na lista do
googlegroups, te sugiro olhar lá. a dica é usar uma biblioteca nova
chamada requests
2011/9/26 Valtoir <valtoi...@gmail.com>:
> ------------------------------------
>
> Python-Brasil
> http://www.python.org.br/wiki/AntesDePerguntar
> Links do Yahoo! Grupos
>
>
>
--
Leonardo Santagada
Passei pela mesma coisa que você usando urllib2, só que tentando baixar o resultado da mega sena.
Resolvi da seguinte forma:
http://evaldoavelar.blogspot.com/2011/09/python-download-file-fom-web.html
>________________________________
>From: Valtoir <valtoi...@gmail.com>
>To: python...@yahoogrupos.com.br
>Sent: Monday, September 26, 2011 6:40 PM
>Subject: [python-brasil] Diário Oficial da União
[As partes desta mensagem que não continham texto foram removidas]
Obrigado a todos que responderam, assim que tiver algo publico e anuncio
aqui. Em caso de dúvida volto a perguntar.
Abraços,
Valtoir
Em 27 de setembro de 2011 13:11, Leonardo Santagada
<sant...@gmail.com>escreveu:
> **
[As partes desta mensagem que não continham texto foram removidas]
------------------------------------
Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse: