13 de nov. de 2012

Criando um Webcrawler em Python

7 comentários
     Os webcrawlers são processos automatizados para busca ou manutenção de sites (checar links e validação do código). Através dos crawlers temos os mecanismos de buscas do Google e Altavista!! Eles interagem com o ambiente através do uso de protocolos HTTP, SMTP, RSS, etc. O Googlebot usa o algoritmo do PageRank para classificar a ordem de importância dos sites. 
    Exitem questões legais para o uso de crawlers, por isso respeite as regras do robots.txt e suas políticas de cortesia.
     Os webcrawlers se identificam no servidor pelo User-Agent http header. Podemos ver esses dados usando o urllib2:

import urllib2
url = raw_input('url: ')
if 'http' not in url:
 url = 'http://'+url
resposta = urllib2.urlopen(url)
html = resposta.read()
print html.split('\n')[0]
print resposta.info()

    Agora vamos aos exemplos!! Para testar os códigos abaixo, é preciso instalar a biblioteca BeautifulSoup e o Requests: 
$ apt-get install python-bs4
$ easy_install beautifulsoup4
ou
$ pip install beautifulsoup4

$ pip install requests
ou
$ easy_install requests