Necesito desarrollar un motor de búsqueda vertical como parte del sitio web. Los datos para el motor de búsqueda provienen de sitios web de una categoría específica. Supongo que para esto necesito tener un rastreador que rastree varios (unos cientos) sitios (en una categoría comercial específica) y extraer contenido y direcciones URL de productos y servicios. Otros tipos de páginas pueden ser irrelevantes. La mayoría de los sitios son pequeños o pequeños (unos cientos de páginas como máximo). Los productos tienen de 10 a 30 atributos.Desarrollo de un rastreador y un raspador para un motor de búsqueda vertical
Cualquier idea sobre cómo escribir un tal rastreador y extractor. He escrito algunos rastreadores y extractores de contenido utilizando las bibliotecas de ruby habituales, pero no un motor de búsqueda completo. Supongo que, rastreador, de vez en cuando, se despierta y descarga las páginas de los sitios web. Se seguirá, por supuesto, el comportamiento cortés habitual, como comprobar las reglas de exclusión de los robots. Mientras que el extractor de contenido puede actualizar la base de datos después de leer las páginas. ¿Cómo sincronizo el rastreador y el extractor? ¿Qué tan estrechamente deben ser integrados?
¿Se almacenarán los atributos de todos los sitios en la misma ubicación? Por ejemplo, tiene más de 30 columnas en una tabla de base de datos. – BenMaddox