2010-07-29 9 views

Respuesta

3

¿Por qué no buscar existing code que ya hace lo que necesita? Si necesita construir uno usted mismo, vale la pena examinar el código existente y deconstruirlo para descubrir cómo funciona.

+0

es solo que todavía soy un aprendiz y entenderé ciertas cosas solo si obtengo los conceptos básicos, la forma correcta. gracias por su ayuda, estoy mirando el código ahora :) –

5

Seguramente necesitará una biblioteca de análisis html. Para esto puedes usar BeautifulSoup. Puede encontrar muchas muestras y tutoriales para buscar urls y procesar el html devuelto en la página oficial: http://www.crummy.com/software/BeautifulSoup/

+0

gracias ..:) para empezar, estoy interesado en saber qué bibliotecas/módulos debo importar? junto con este? mi objetivo es escribir un rastreador simple (sin multi hilos, si eso cuenta) –

+0

BeautifulSoup es bastante fácil de trabajar. "De importación BeautifulSoup BeautifulSoup; sopa = BeautifulSoup.. (" "" ... "" ") –

1

Otra buena biblioteca que puede necesitar es para analizar feeds. Ahora que tiene BeautifulSoup para URL, puede usar Feedparser para los feeds. http://www.feedparser.org/

+0

Bienvenido a Stackoverflow (SO) La próxima vez, acaba de editar su respuesta existente con la nueva información :) –

7

Recomiendo echarle un vistazo a Scrapy. La biblioteca puede funcionar con BeautifulSoup o cualquiera de sus analizadores HTML preferidos. Yo personalmente lo uso con lxml.html.

Fuera de la caja, recibirá varias cosas de forma gratuita: solicitudes

  • concurrentes, gracias a Twisted
  • CrawlSpider objetos de forma recursiva buscan vínculos en todo el sitio
  • Gran separación de extracción de datos & procesamiento, que aprovecha al máximo las capacidades de procesamiento en paralelo
+1

1 para recomendar scrapy –

5

Si aún desea escribir uno desde cero, querrá usar el módulo mechanize. Incluye todo lo que necesita para simular un navegador y automatizar la búsqueda de URL. Seré redundante y también diré BeautifulSoup para analizar cualquier html que obtengas. De lo contrario, iría con Scrapy ...

2

Depende de sus necesidades. Si necesita webscraping básico, mecanize + BeautifulSoup lo hará.

Si necesita javascript para representar, entonces iría por Selenium o spynner. Ambos son geniales

-1
import re, urllib 

textfile = file('depth_1.txt','wt') 
print "Enter the URL you wish to crawl.." 
print 'Usage - "http://dynamichackerboys.blogspot.in" <-- With the double quotes' 
myurl = input("@> ") 
for i in re.findall('''href=["'](.[^"']+)["']''', urllib.urlopen(myurl).read(), re.I): 
     print i 
     for ee in re.findall('''href=["'](.[^"']+)["']''', urllib.urlopen(i).read(), re.I): 
       print ee 
       textfile.write(ee+'\n') 
textfile.close() 

de impresión 'Uso - "http://dynamichackerboys.blogspot.in" < - Con las comillas dobles' myurl = input ("@> ") para i en re.findall ('' 'href =" '["' ] '' ', urllib.urlopen (myurl) .read(), re.I): imprime i para ee in re.findall (' '' href = "'["'] '' ', urllib.urlopen (i) .read(), re.I): de impresión ee textfile.write (EE + '\ n') textfile.close()

para el rastreo en el sitio web

Cuestiones relacionadas