Je dois développer un moteur de recherche vertical dans le cadre du site Web. Les données pour le moteur de recherche proviennent de sites Web de catégorie spécifique. Je suppose que pour cela, j'ai besoin d'un robot qui explore plusieurs (quelques centaines) sites (dans une catégorie d'entreprise spécifique) et extraire le contenu et les URL des produits et services. D'autres types de pages peuvent ne pas être pertinents. La plupart des sites sont petits ou petits (quelques centaines de pages au maximum). Les produits ont de 10 à 30 attributs.Développer un moteur de recherche vertical et un grattoir
Toutes les idées sur la façon d'écrire un tel crawler et un extracteur. J'ai écrit quelques robots d'exploration et extracteurs de contenu en utilisant les bibliothèques ruby habituelles, mais pas un moteur de recherche complet. Je suppose que, de temps en temps, Crawler se réveille et télécharge les pages à partir de sites Web. Le comportement poli habituel comme la vérification des règles d'exclusion des robots sera bien entendu suivi. Alors que l'extracteur de contenu peut mettre à jour la base de données après avoir lu les pages. Comment synchroniser le robot d'exploration et l'extracteur? Dans quelle mesure doivent-ils être intégrés?
Les attributs de tous les sites seront-ils stockés au même endroit? Par exemple, vous avez plus de 30 colonnes sur une table de base de données. – BenMaddox