Réseau de recherche. Comment écrire un moteur de recherche

Instructions

Divisez votre moteur de recherche en trois parties. La première partie est l'interface du futur moteur de recherche web, qui est écrite en PHP. La deuxième partie est l'index (My SQL database), qui stocke toutes les informations sur les pages. La troisième partie est robot de recherche, qui indexera les pages Web et mettra leurs données dans l'index, cela se fait dans le langage Delphi.

Commençons par créer l'interface. Créez le fichier index.php. Pour ce faire, divisez la page en deux à l'aide de tableaux. La première partie est le formulaire de recherche, la seconde est les résultats de la recherche. En haut, créez un formulaire qui enverra des informations au fichier index.php en utilisant la méthode get. Il y aura trois éléments dessus - un champ de texte et deux autres boutons. Un bouton est nécessaire pour envoyer une demande, le second - pour effacer le champ (ce bouton est facultatif).

Nommez le champ de texte « rechercher », le premier bouton (celui qui envoie la demande) le nom « Rechercher ». Laissez le nom du formulaire tel quel - "form1".

Connectez le fichier de configuration pour vous connecter à la base de données.

inclure "config.php" ;

Vérifiez si le bouton "Rechercher" a été cliqué.

if (isset ($ _ GET ["bouton"])) (code exécuté si le bouton "Rechercher" est appuyé) else (code exécuté si le bouton "Rechercher" n'est pas appuyé)

Si le bouton est cliqué, vérifiez la présence d'une requête de recherche.

if (isset ($ _ GET ["recherche"])) ($ recherche = $ _ GET ["recherche"];)

Si requête de recherche est, puis définissez la variable de recherche $ sur le texte de votre requête de recherche.

if ($ search! = "" && strlen ($ search)> 2) (code de recherche de la base de données) else (echo "Une requête de recherche vide a été spécifiée ou la chaîne de recherche contient moins de 3 caractères.";)

Dans le cas où la requête de recherche satisfait la condition supérieure, exécutez le script de recherche lui-même.

Exécutez une boucle qui imprimera les résultats de la recherche via printf.
C'est tout. Si vous avez les connaissances nécessaires, vous pouvez alors ajouter les éléments dont vous avez besoin au moteur de recherche et élaborer votre propre algorithme pour sa création.

Les sites Web populaires attirent les utilisateurs non seulement avec leur design original, leur contenu thématique intéressant, mais aussi avec des services fonctionnels. Les gens vont sur Internet pour obtenir des informations, recherchant chaque jour des documents qui les intéressent. Il est donc logique de créer moteur de recherche sur le site Internet en donnant aux utilisateurs la possibilité de trouver rapidement ce dont ils ont besoin à partir de ressources sélectionnées à la main.

Tu auras besoin de

  • - navigateur;
  • - Connexion Internet;
  • - le droit de modifier le contenu ou les modèles des pages du site.

Instructions

Commencer à construire le système recherche personnalisée basé sur les technologies Google. Connectez-vous au panneau de service de gestion des moteurs de recherche. Ouvrez la page avec l'adresse dans le navigateur http://www.google.ru/cse/... Utilisez votre compte Google pour travailler avec le système. Cliquez sur le bouton "Créer un système de recherche d'utilisateurs" Si vous n'êtes pas connecté pour le moment, cliquez sur le lien "Connexion". Saisissez les données de votre compte dans le formulaire et cliquez sur le bouton "Connexion". Si vous n'avez pas de point commun Compte google, créez-le en cliquant sur le lien « Créer un compte maintenant » et en suivant les étapes suggérées.

Saisissez les paramètres de base du système de recherche personnalisé que vous créez. Remplissez les champs "Nom" et "Description", sélectionnez la langue de l'interface dans la liste déroulante "Langue". Dans la zone de texte « Sites à rechercher », entrez la liste des ressources, dont les informations seront présentées dans les résultats de la recherche en utilisant le système en cours de création. Cliquez sur Suivant".

Obtenez le code javascript pour installer le moteur de recherche sur le site. Sélectionnez tout le contenu dans la zone de texte de la page actuelle. Copiez le contenu sélectionné dans le presse-papiers et enregistrez-le dans un fichier temporaire.

Si vous avez déjà choisi un futur serveur de messagerie, vous pouvez procéder à l'inscription adresse e-mail... Le processus d'inscription sur n'importe quel portail est à peu près le même et propose de remplir un questionnaire et des instructions Question de sécurité, au cas où vous oublieriez votre mot de passe de messagerie. Remplir le questionnaire doit être abordé de manière responsable, car si votre courrier est piraté, vous devrez fournir au registraire les données du questionnaire. Par conséquent, si vous décidez de prendre un pseudonyme ou d'utiliser délibérément de fausses données, cela vaut la peine de les conserver dans un endroit sûr.

Remarque

E-mail devraient généralement être offerts gratuitement. Mais il existe des sites qui le font pour un certain abonnement mensuel avec un nom de domaine magnifique et exclusif et de nombreuses fonctionnalités supplémentaires. Avant d'acheter boites aux lettres cela vaut la peine d'envisager toutes les possibilités services gratuits, puis accepter déjà les offres commerciales.

Conseil utile

Au moment de choisir serveur de courrier accordez une attention particulière aux portails populaires qui offrent Service Poste... En règle générale, ces portails ont fait leurs preuves et garantissent fiabilité et fonctionnalité.

Pour améliorer la fiabilité des performances site, sécurité des informations sur le site, augmentation du trafic site, en réduisant la charge sur le site, etc. faire miroir site... Il est entendu que dans le cas où la ressource principale est indisponible pour un certain nombre de raisons, le visiteur se rend alors sur la ressource de réserve, c'est-à-dire le site miroir.

Beaucoup de nouveaux venus dans le domaine du "webmastering" (appelons-le comme ça) acquièrent à un moment donné une idée "brillante", "et pas pour agiter mon moteur de recherche pour moi ?! vendez de la publicité, coupez le butin !" J'avoue, j'ai eu ça aussi... 3 fois.

Moteur de recherche Runet - Yandex killer

J'ai collecté des liens sur des sujets, j'ai commencé à étudier, j'ai pelleté tout ce que j'ai trouvé sur Aport et Yandex. J'ai téléchargé plusieurs moteurs gratuits avec des araignées, mais je n'avais pas assez de "connaissances" pour même les installer. Besoin d'invention est rusé : j'ai pris un script d'annuaire (sans base de données, sur des fichiers txt), avec une recherche dans la base de données des sites et j'ai commencé à le remplir de sites : d'abord moi-même, puis j'ai engagé un modérateur. Et qu'en penses-tu? Bien sûr, l'idée a échoué, mais des idées sont apparues qui ont afflué dans le moteur de recherche à travers des livres, à ce sujet - plus loin.

Moteur de recherche de livres

Après avoir fouillé dans les quelques runes (vers 2004-2007), j'ai pris deux livres : Colibris et Boléro, la raison du choix est simple - dans les deux cas, il était possible de télécharger des bases de données avec les marchandises de ces magasins depuis l'interface partenaire. Il y avait peu d'informations dans les bases de données : le titre du livre, l'auteur, l'adresse sur le site du magasin. Mais cela suffisait pour créer un annuaire + moteur de recherche. De plus, des annotations ont également été émises pour les livres (elles ont été analysées en temps réel à partir des sites de magasins, oui, je ne me doutais même pas de la mise en cache à ce moment-là, tout comme je n'utilisais pas de redirection automatique...).

Le moteur de recherche de livres n'a pas été un succès, mais le catalogue a apporté des tonnes de trafic pétrolier de Yandex et, par conséquent, des ventes de livres. La plupart des achats ont été livrés par la poste, en espèces à la livraison, il a donc fallu des mois pour recevoir les reçus sur le compte ... La poste russe.

Tueur de Google

La direction principale de mon travail était dans le "bourgeois", en particulier, j'ai travaillé avec PPC, principalement avec Yumax, et j'ai donc choisi leur flux comme "moteur" pour le prochain moteur de recherche. Armé de php (ou plutôt en refaisant les parseurs de catalogues de livres), j'ai appris à ajouter des informations supplémentaires à la sortie en fonction de la demande de l'utilisateur, des images, etc. (comme maintenant ).

Et puis quelque chose de merveilleux s'est produit. Moteurs de recherche : Msn (maintenant - Bing) et Google ont commencé à indexer les résultats de "mon moteur de recherche" et à satisfaire le trafic, qui à son tour a été généreusement payé par Yumax.

Et tandis que mes collègues rivetaient les portes, j'ai riveté de tels moteurs de recherche : différents problèmes, différentes sources pour Information additionnelle... Pourquoi faire des doorways et rediriger le trafic vers le flux, au risque d'être banni à cause d'une redirection, quand on peut créer, par exemple, des mini-sites thématiques, sans redirection ? Des portes blanches, il semble qu'elles s'appellent maintenant ainsi. L'idylle n'a pas duré longtemps - moins d'un an. L'algorithme change au début sur MSN, puis ils ont enterré Google des solutions similaires(plus précisément, les a rendus beaucoup moins efficaces).

Quelque part lors de l'effondrement du "système" de MSN, j'ai "par chagrin" pris l'un des domaines interdits - le site et lui ai transféré un blog qui fonctionnait auparavant sur un forum ou sur le site d'une agence de publicité.

3 fois! 3 fois marché sur un râteau similaire : certaines personnes n'apprennent même pas de leurs propres erreurs :)

Abonnez-vous à notre newsletter et obtenez ce qui n'était pas inclus dans le blog, annonces et collections thématiques + plusieurs guides (collecte d'abonnés et vente d'informations).

Vous êtes-vous déjà demandé comment fonctionnent des moteurs de recherche tels que Yandex ou Google ? Si vous étiez confronté à la tâche d'écrire moteur de rechercheà partir de zéro, par où commenceriez-vous ? Beaucoup d'entre vous ont sûrement déjà écrit des sites de contenu simple avec un système de recherche interne pour eux, et la recherche a été implémentée très simplement - en utilisant la commande LIKE de la syntaxe SQL. Pensez-vous que Yandex fonctionne comme ça aussi ? ??

Parler de tous les mécanismes mis en œuvre dans les moteurs de recherche modernes n'est clairement pas une tâche pour un seul article (et je ne peux pas vous en dire grand-chose 🙂), alors je vais parler ici de la partie la plus importante et la plus inconnue des moteurs de recherche pour beaucoup - l'index. Mais ne nous précipitons pas.

En général, l'ensemble du moteur de recherche peut être grossièrement divisé en 3 parties : l'interface utilisateur, l'agent de recherche et l'index.

L'interface utilisateur est familière à tout le monde - google.com, ya.ru. Il s'agit généralement d'une simple chaîne de recherche. Un agent de recherche est un programme qui parcourt les sites, collecte les textes des pages et les URL à partir de ceux-ci. Le robot stocke les informations collectées dans l'index.
Eh bien, la partie la plus importante est l'index, ou base de recherche Les données.

L'index stocke toutes les informations collectées par les agents de recherche - pages Internet.

En termes généraux, le travail de l'agent consiste à collecter des informations - il se rend sur la page du site, en extrait le texte, en extrait des liens et les envoie avec le texte à l'index. Ce moment doit juste être considéré plus en détail, puisqu'il consiste à emploi principal moteur de recherche.

Comment exactement les données sont-elles stockées dans l'index ? Quelle est la structure des tables d'index ? Ce n'est qu'un des détails clés du moteur de recherche.

Considérant le moteur de recherche de manière très abstraite, l'index peut être divisé en trois tableaux : dictionnaire, documents et liens.

Pour être plus clair, imaginez trois tableaux :

mots (dictionnaire) avec champs :
identifiant, nom

documents (documents) avec des champs :
identifiant, document

et relations avec les champs :
word_id, doc_id

Le moteur de recherche divise le texte en mots avant d'ajouter le texte de la page à l'index. Après avoir reçu une liste de mots du document, il ajoute à son dictionnaire (mots de la table) les mots de ceux-ci qui n'y sont pas encore. Et le document lui-même est enregistré dans le tableau des documents.
Après cela, des liens mot-à-document sont ajoutés à la table des relations, qui déterminent quels mots apparaissent dans quel document.

Le prochain processus complexe mis en œuvre dans les moteurs de recherche est la sélection et le classement des informations à la demande de l'utilisateur.

Une fois que vous êtes allé sur google.com et que vous avez tapé « php » dans la recherche, un mécanisme très complexe est lancé, dont le but est de vous montrer une liste de documents liés à la demande, par ordre décroissant de pertinence.

Comment cela est-il mis en œuvre ? Tout est très compliqué ici. Premièrement, le moteur de recherche doit sélectionner les documents pertinents - ces documents dans lesquels les mots spécifiés sont trouvés. A l'aide des tableaux mentionnés ci-dessus, on peut déjà généralement imaginer comment cela se fait. Mais avec le classement (classement), des problèmes commencent déjà que chaque moteur de recherche résout à sa manière.

Des algorithmes de clustering et de classification très sophistiqués sont déjà utilisés ici, qui divisent tous les documents en groupes et déterminent une catégorie pour chaque document. Déjà, sur la base de ces catégories, il existe des informations sur le degré de pertinence de chaque document. En plus de ce facteur, un grand nombre d'autres sont également pris en compte dans les moteurs de recherche modernes.

Vous devez vraiment faire la distinction entre les moteurs de recherche sur le Web (google, Yandex, etc.) et les moteurs de recherche d'informations relativement petits. Les premiers sont beaucoup plus grands que les seconds, ce qui signifie que leur structure est beaucoup plus complexe.

Les petits moteurs de recherche incluent des projets tels que sphinx et lucene.

C'est tout. Telle est une petite et utile excursion dans les moteurs de recherche. ??

Information additionnelle.

Vous avez aimé l'article ? Partager avec des amis: