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.

-
Software
- RustDesk la alternativa a TeamViewer y AnyDesk para Windows, Linux y Mac
- Rustdesk [Escritorio remoto]: una alternativa de TeamViewer y AnyDesk para Linux
- Joomla 6, ¿Qué hay para ti?
- Suiza ahora exige que todo el software gubernamental sea de código abierto
- ¿Qué significa la IA de código abierto, de todos modos?
- La importancia de los diseñadores para conseguir un photocall personalizado impactante
- Disponible ONLYOFFICE Docs 8.0: formularios PDF, RTL, Buscar, asistente de gráficos, plugins actualizada y más
- 14 mejores sistemas operativos para Internet de las cosas (IoT)
- Cómo instalar Odoo 15 en CentOS 8 y 9 / AlmaLinux 8 y 9
- ONLYOFFICE lanza la versión 7.4 de su suite ofimática, con nuevas funciones y mejoras en la experiencia del usuario
- Cómo crear un servicio Systemd en Linux
- Los programas no libres son una amenaza para la libertad de todos - Richard Stallman
- Cómo crear formularios rellenables con roles de usuario en ONLYOFFICE Docs
- Alternativas a gratuitas a Adobe Photoshop, InDesign e Illustrator
- Convertir Aplicaciones Web en Apps de Escritorio con WebCatalog
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.