Python: automatizando a extração de informações na web com expressões regulares

Presenciamos uma grande necessidade e valorização de soluções para recuperação, filtragem e organização de informações da Internet. O presente artigo pretende ilustrar, de forma didática, como automatizar a obtenção de informações dinâmicas em páginas web utilizando a linguagem Python e seu amplo suporte a expressões regulares.

[ Hits: 87.996 ]

Por: Rafael José de Alencar Almeida em 16/09/2009 | Blog: http://www.rafael-labs.com


Obtendo a última postagem de um perfil no Twitter



1. Definindo a codificação e importando os módulos necessários:

#coding: UTF-8
import re, urllib2

2. Obtendo o código fonte da página:

perfil = 'vivaolinuxrss'
url = 'http://twitter.com/%s' % perfil

html = urllib2.urlopen(url).read()

3. Filtra o código para obter a postagem mais recente:

postagem = re.search(r'(entry-content\">)(.*?)(</span>)' , html)
#EXEMPLO HTML: <span class="entry-content">[S] Sincronizar arquivos com rsync - <a href="http://bit.ly/aRc9J" class="tweet-url web" rel="nofollow" target="_blank">http://bit.ly/aRc9J</a></span>

4. Exibe a postagem na tela:

print postagem.group(2)

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. O módulo urllib2
   3. O módulo re
   4. Obtendo informações sobre o tempo em uma cidade brasileira
   5. Obtendo a última postagem de um perfil no Twitter
   6. Realizando o download de uma imagem dinâmica
   7. Obtendo o resultado de buscas no Google
   8. Conclusão
Outros artigos deste autor

Automatizando a criação de uma base de conhecimento em Prolog para gerenciar os acessos a um site

Esteganografia e Esteganálise: transmissão e detecção de informações ocultas em imagens digitais

Leitura recomendada

Alimentando Desktopcouch com Zeitgeist

Introdução a Threads e como implementá-las em Python

Reconhecimento de placas de veículos com OpenALPR

Programe em Python no jogo Minecraft com seu filho ou sozinho

Qu1cksc0pe - All-in-One Static Malware Analysis Tool

  
Comentários
[1] Comentário enviado por valdineisantos em 16/09/2009 - 16:21h

Muito bom seu texto. Como você comentou o BeautifulSoap é bastante util eu sempre procuro pelos elementos da página com ele e não com expressões regulares embora o resultado final seja exatamente o mesmo.

Parabens.

[2] Comentário enviado por wryel em 16/09/2009 - 17:35h

eu fiz essas coisas com o curl do linux uns tempos atras, cheguei a achar a lib pycurl na net mas não tava conseguindo importar pra dentro dos projetos ;|

maior mão na roda seu tutorial =0

[3] Comentário enviado por forkd em 17/09/2009 - 10:17h

Excelente artigo, parabéns!

Poxa, legal ver mais alguém de Barbacena por aqui!
Como eu, é entusiasta de Linux e Python!
Mande um abraço pro prof. Herlon lá na EAFB!

Abraço!

[4] Comentário enviado por jmurray em 26/08/2010 - 09:34h

Era somente isso que faltava para mim migrar para o Linux por definitivo. O que me prende no Windows era a automatização de tarefas para a internet !

[5] Comentário enviado por iKaleo em 09/03/2016 - 15:45h

Estou aprendendo python e php sei uma base por cima também , precisava criar um script em python ou outra se alguem conseguir me ajuda . O programa tem que amarzena um url exemplo var=web.browser.open(http://www.empresa.com.br) quero que quando o usuario digite o site que é empresa e o python vai ficar rodando em segundo plano , assim que o cliente acessar o link ele sera automaticamete rederecionado para meu outro site para ter um controle . alguem tem algum ideia de como posso fazer isso ?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts