Programação  
 
Conhecimento computador >> Programação >> Programação Python >> 
Como programar uma aranha e-mail em Python
motores de busca, muitas vezes usam algoritmos que levam informações de páginas da Web e classificá-las de acordo com a popularidade. Esses algoritmos são freqüentemente chamados de "aranhas ". Um programador Python pode aprender muito sobre a programação multithreaded , padrão de expressão regular compatível e dados Web Buscar através da criação de uma aranha. Você pode começar um script Python aranha com pouco mais do que as bibliotecas Python incluídas e intérprete. Coisas que você precisa
interpretador Python
Mostrar Mais instruções
1

Definir duas expressões regulares para corresponder os endereços de e-mail e hiperlinks no código da página da Web :
importação

urllibimport threadingimport re

r = re.compile ('( ? < = href \\ = \\ " mailto :) . * ? @ . * ? . [ \\ w ] { 0,3 } ( ? = \\ " ) ') # Mailsr1 = re.compile (' ( ? < = href \\ = \\"). * ? ( ? = \\ " ) ') # links
2

Definir um construtor de classe que leva um URL da página web como seu argumento. O construtor terá a URL como um ponto de partida, em seguida, começar a aula "Spider ", como um segmento separado :

Aranha classe ( threading.Thread ) : def __ init__ (self, endereço): self.url = addressthreading.Thread.__init__ (self ),
3

Defina o método "run", que é executado sempre que um novo segmento do tipo " aranha ", começa . Este método processa a página da Web com " urllib.urlopen " , puxa -mails a partir do código , usando o "r" expressão regular e os armazena em um arquivo de log . Em seguida, leva os hiperlinks e transfere a informação de que a URL , iniciando um novo segmento para processar a página Web:

def execute (self):

source = urllib.urlopen ( self.url . ) read () = mails r.findall ( fonte ) mails = list ( set ( mails ) ) log = open (' log.txt ', ' a') for i in mails: se re.match ( "^ [ ,"_.0 -9a -z- ] + @ ( [0 -9a- z] [0 -9a -z- ] +. ) + [az] {2,4 } $ ", i) = None : se (i + '\\ n' ), não em ( open (' log.txt ', ' r') readlines (). ) : print ' Saved :', ilog.write (i + '\\ n' ) contam + = 1log.close () urls = r1.findall ( fonte ) para url urls em : . Crawl (url) start ()
4

Execute a classe Aranha chamando um novo segmento do tipo " aranha " e fornecendo lo com um URL: .

Spider ( ' www.google.com ') start ()

Anterior :

Próximo : No
  Os artigos relacionados
·Geoprocessamento Com Python 
·Como matar um tópico com FG em Python 
·Como alterar a cor de um ponto da trama em matplotlib 
·Como alterar a cor de uma Python Boxplot 
·Como limitar Logins no código Python 
·Lista de módulos Python 
·Como instalar pacotes LiveWires em Python 
·Como marcar números em uma lista Python 
·Como converter arquivos PY para Pyc 
·Como Gráfico com Software para Python 
  Artigos em destaque
·Como mostrar texto na Rollover 
·Como detectar Robôs em PHP 
·Vs Java Script . PHP 
·Como passar Entradas De PHP para Perl 
·Função em C para Palindromes 
·Como escrever uma consulta SQL Informix 
·Como publicar Com CPP 
·Como ler entrada Java 
·Como Incorporar Vídeo Flash em HTML 
·Como ler uma linha de um arquivo aleatório em CSH 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados