LinuxParty
Un Web crawler es un programa que navega por Internet de una manera predeterminada, configurable y automática, realizando acciones programadas en el contenido crawler. Los motores de búsqueda como Google y Yahoo utilizan rastreadores como medio de proporcionar datos de búsqueda, es decir, estos rastreadores encuentran y almacenan lo que luego tu vas a buscar.
El rastreador multi-hilo basado python es bastante simple y rápido. Es capaz de detectar y eliminar enlaces duplicados y guardar la fuente y el enlace de la que luego puede usarse en la búsqueda de enlaces entrantes y salientes para el cálculo de fila de la página. Es totalmente gratuito y el código se muestra a continuación:
(Puede que dependiendo de la seguridad de la página, no funcione en todas las webs)
import sys, thread, Queue, re, urllib, urlparse, time, os, sys dupcheck = set() q = Queue.Queue(100) q.put(sys.argv[1]) def queueURLs(html, origLink): for url in re.findall('''<a[^>]+href=["'](.[^"']+)["']''', html, re.I): link = url.split("#", 1)[0] if url.startswith("http") else '{uri.scheme}://{uri.netloc}'.format(uri=urlparse.urlparse(origLink)) + url.split("#", 1)[0] if link in dupcheck: continue dupcheck.add(link) if len(dupcheck) > 99999: dupcheck.clear() q.put(link) def getHTML(link): try: html = urllib.urlopen(link).read() open(str(time.time()) + ".html", "w").write("" % link + "\n" + html) queueURLs(html, link) except (KeyboardInterrupt, SystemExit): raise except Exception: pass while True: thread.start_new_thread( getHTML, (q.get(),)) time.sleep(0.5)
Guarde el código como LinuxPartyCrawler.py
Para iniciar el rastreo escriba:
python LinuxPartyCrawler.py http://es.wikipedia.org
Disfrute!
¡¡Atención!!
Algunas Webs, (incluida la nuestra) tienen herramientas que protegen de ciertos bots y crawlers, y pueden bloquearte el acceso a la web, incluso de forma permanente. Haz pruebas bajo tu responsabilidad.
En otros artículos intentaré mostrar otros códigos similares realizados en PHP.

-
Mac
- Apple se prepara para presentar el rediseño de software más audaz en años en todo el ecosistema
- Los administradores de sistemas están furiosos por los recortes de vida útil de los certificados SSL/TLS de Apple, que son una pesadilla
- ¿El fin de la actualización del iPhone?
- La Comisión Europea confirma que el comportamiento anticompetitivo de Apple es ilegal y perjudica a los consumidores
- 5 formas de liberar espacio de almacenamiento en tu Mac
- Mac OS X Lion y OS X Mountain Lion, gratis para descarga
- Apple confirma que en sus Mac ARM no podrás tener arranque dual ni con Windows ni con Linux
- Apple no tiene columna vertebral
- Muy, muy grave el desastre de seguridad de los Mac de Apple
- Investigador de Seguridad encuentra un defecto fundamental en iOS
- Apple tiene demasiado dinero
- El discurso de Steve Jobs (subtitulos en castellano) en la U. Standford
- Steve Jobs, descanse en paz.
- ¿Linux y Android, próximamente en el iPhone 4, iPad y iPod Touch?
- Steve Jobs dimite como consejero delegado de Apple
Comentarios
Me sorprende que escribas eso, arriba ves el código y una explicación de cómo funciona. Evidentemente desde un Linux. Si no tienes Linux, deberás hacerlo correr desde la consola de tu sistema, y "python", deberá estar en el path para poder ejecutarse.