dcrawl: un web crawler multihilo y multidominio

Seguimos aumentando nuestro arsenal, esta vez con un web crawler escrito en go, llamado dcrawl, que es sencillo pero a la vez inteligente, que soporta múltiples hilos para el descubrimiento de enormes listas de nombres de dominio únicos.

dcrawl toma una URL de una web como entrada y detecta todos los enlaces en el cuerpo (body) del sitio. Cada enlace encontrado se añade a la cola. Sucesivamente, cada enlace encolado se rastrea de la misma manera, ramificando en múltiples URLs según se vayan encontrando.


Cómo funciona el crawling o rastreo inteligente:
  • Ramificación limitada por un número predefinido de enlaces por cada hostname único.
  • Número máximo de nombres de host diferentes permitidos por dominio (evita subdominios que se rastreen hasta el “infierno” como por ejemplo, blogspot.com).
  • Se puede reiniciar con la misma lista de dominios - los últimos dominios guardados se agregan a la cola de URL.
  • Rastrea solo los sitios que devuelven text/html en el Content-Type de las respuestas a HEAD.
  • Recupera el cuerpo del sitio con un tamaño máximo de 1MB.
  • No guarda los dominios inaccesibles.
Cómo ejecutarlo
go build dcrawl.go
./dcrawl -url http://wired.com -out ~/domain_lists/domains1.txt -t 8
Uso
     ___                          __
__| _/________________ __ _ _| |
/ __ |/ ___\_ __ \__ \\ \/ \/ / |
/ /_/ \ \___| | \// __ \\ /| |__
\____ |\___ >__| (____ /\/\_/ |____/
\/ \/ \/ v.1.0

usage: dcrawl -url URL -out OUTPUT_FILE -t THREADS

-ms int
maximum different subdomains for one domain (def. 10) (default 10)
-mu int
maximum number of links to spider per hostname (def. 5) (default 5)
-out string
output file to save hostnames to
-t int
number of concurrent threads (def. 8) (default 8)
-url string
URL to start scraping from
-v bool
verbose (default false)
Fuente: https://github.com/kgretzky/dcrawl

Via: www.hackplayers.com
dcrawl: un web crawler multihilo y multidominio dcrawl: un web crawler multihilo y multidominio Reviewed by Zion3R on 19:02 Rating: 5