[python-brasil] Diário Oficial da União

386 views
Skip to first unread message

Valtoir

unread,
Sep 26, 2011, 5:40:00 PM9/26/11
to python...@yahoogrupos.com.br
 

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

__._,_.___
Atividade nos últimos dias:
.

__,_._,___

mauro.baraldi

unread,
Sep 27, 2011, 9:08:16 AM9/27/11
to python...@yahoogrupos.com.br
 

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

__._,_.___
.

__,_._,___

HERBERT HUDSON

unread,
Sep 27, 2011, 9:30:42 AM9/27/11
to python...@yahoogrupos.com.br
Olá Valtoir, Blz?

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


Leonardo Santagada

unread,
Sep 27, 2011, 12:11:08 PM9/27/11
to python...@yahoogrupos.com.br
 

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

__._,_.___
.

__,_._,___

Evaldo

unread,
Sep 27, 2011, 12:59:39 PM9/27/11
to python...@yahoogrupos.com.br
 

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]

__._,_.___
.

__,_._,___

Valtoir

unread,
Sep 27, 2011, 12:37:10 PM9/27/11
to python...@yahoogrupos.com.br
Pessoal,

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:

Reply all
Reply to author
Forward
0 new messages