Différents moteurs de recherche. Comment écrire un moteur de recherche

Avez-vous déjà réfléchi à de tels moteurs de recherche comme Yandex ou Google? Si vous avez eu une tâche d'écrire moteur de recherche À partir de zéro, pourquoi commenceriez-vous? Certes, beaucoup d'entre vous ont déjà écrit des sites de contenu simples avec un système de recherche interne et la recherche a été implémentée très simplement - la syntaxe SQL Syntaxe. Pensez-vous que Yandex fonctionne aussi? 🙂

Pour raconter à propos de tous les mécanismes mis en œuvre dans les moteurs de recherche modernes - il s'agit clairement de la tâche de non pour un poste (et je ne peux pas me dire beaucoup 🙂), alors je vais vous parler du plus important et inconnu pour beaucoup de Moteurs de recherche - L'index. Mais nous ne nous précipiterons pas.

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

L'interface utilisateur est familière à tous - Google.com, Ya.ru. Habituellement, c'est juste une chaîne de recherche. Agent de recherche - un programme qui rampe à travers des sites en collectant des textes de pages et de l'URL d'eux. L'agent de recherche enregistre les informations collectées dans l'index.
Eh bien, la partie la plus importante est un index, ou base de recherche Les données.

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

En termes généraux, le travail de l'agent est de collecter des informations - elle entre dans la page du site, prend le texte de là, retire les liens de celui-ci et les envoie avec le texte à l'index. Ce moment devrait être considéré plus en détail, puisqu'il réside dans celui-ci devoirs moteur de recherche.

Comment les données persistent-elles exactement dans l'index? Quelle structure les tables d'index ont-elles? Ceci est juste un et des principaux détails du moteur de recherche.

Si nous considérons que le système de recherche est très abstrait, l'index peut être divisé en trois tables: dictionnaire, documents et connexions.

Pour être plus clair, imaginez trois tables:

mots (Dictionnaire) avec champs:
ID, nom.

documents (documents) avec champs:
ID, document

et relasses (communications) avec des champs:
word_id, doc_id

Avant d'ajouter le texte de la page à l'index, le moteur de recherche le casse en mots. Après avoir reçu la liste des mots du document, il ajoute à votre dictionnaire (mots de table) ces mots d'eux, ce qui n'est pas là. Et le document lui-même enregistre dans la table des documents.
Après cela, les relations "Word-Document" sont ajoutées à la table des relations, qui déterminent quels mots dans lesquels sont trouvés du document.

Le prochain processus complexe mis en œuvre dans les moteurs de recherche est un exemple et un classement d'informations sur la demande de l'utilisateur.

Une fois que vous êtes allé sur le site Web de Google.com et lancez-vous à la recherche "PHP", un mécanisme très difficile est lancé, dont le but est de vous montrer une liste de documents liés à la demande, dans l'ordre de pertinence décroissant.

Comment est-il implémenté? Tout est très difficile ici. Premièrement, le moteur de recherche doit sélectionner les documents pertinents - ces documents dans lesquels ces mots sont trouvés. Avec l'aide des tables mentionnées ci-dessus, il est déjà possible d'imaginer comment cela se fait. Mais avec classement (commande), des problèmes ont déjà commencé que chaque moteur de recherche résout à sa manière.

Il existe déjà des algorithmes de clustering et de classification très complexes qui divisent tous les documents en groupes et déterminent la catégorie pour chaque document. Déjà, basé sur ces catégories, certaines informations sur le degré de pertinence de chaque document apparaissent. Outre ce facteur dans les moteurs de recherche modernes, un grand nombre d'autres sont également pris en compte.

Il devrait être vrai de distinguer les moteurs de recherche sur le Web (Google, Yandex, etc.) à partir de moteurs d'informations relativement faibles et de recherche. Les premiers sont significativement supérieurs à l'échelle du second, et donc la structure qu'ils ont beaucoup plus compliquée.

Les petits moteurs de recherche incluent des projets tels que Sphinx et Lucene.

C'est tout. Une excursion aussi petite et utile dans les moteurs de recherche. 🙂

Informations Complémentaires.

De nombreux nouveaux arrivants dans la sphère de "webmastering" (appelons-le) à un moment donné, ils obtiennent une "idée brillante" "et de ne pas remuer mon moteur de recherche ?! Vendez de la publicité, un butin découpant! ». J'avoue que c'était et je l'ai ... 3 fois.

Moteur de recherche pour Runet - Yandex Killer

Il a inventé des références sur des sujets, a commencé à étudier, fermez tout ce qui découvre sur APORT et YANDEX. J'ai téléchargé plusieurs moteurs libres avec des araignées, mais "connaissances" n'était pas suffisant, même pour les mettre simplement. Gol sur la fiction du Cunnu: J'ai pris le script de catalogue (sans base de données, sur les fichiers TXT), avec le site de recherche et a commencé à le remplir avec des sites: d'abord moi-même, puis a embauché Modérateur. Et que penserais-tu? Bien sûr, l'idée a échoué, mais il y avait des idées qui ont éclaté un moteur de recherche sur des livres, à ce sujet - plus loin.

Moteur de recherche pour livres

Courir dans le rafalier non ministériel (2004-2007 environ), a pris deux livres: colibris et boléro, la raison de choisir est simple - dans les deux cas de l'interface partenaire, vous pouvez déployer des bases de données avec des biens de ces magasins. Il y avait peu d'informations dans les bases: le nom du livre, l'auteur, l'adresse sur le site de magasin. Mais il suffisait de créer un catalogue + moteur de recherche. De plus, les livres ont été délivrés et des annotations (sécurisées en temps réel des magasins de magasins, oui, je n'ai même pas suspecté la mise en cache de la mise en cache, comme cela n'a pas utilisé la redirection automatique ...).

Le moteur de recherche de livres n'a pas utilisé le succès, mais le catalogue a porté les tons du trafic pétrolier de Yandex, respectivement, les ventes de livres. La plupart des achats étaient avec livraison par courrier, en espèces à la livraison, de sorte que les revenus attendent des mois ... Poste russe.

Tueur Google

La principale direction de mon travail était dans le "bourgeoisite", en particulier, travaillé avec PPC, principalement avec des yumaks, et donc comme un "moteur" pour le prochain moteur de recherche, ils ont choisi leur FID. Armé de PHP (ou plutôt de convertir Bookstart par exemple), a appris à ajouter des informations supplémentaires à émettre, respectivement, la demande, les images, etc. (juste maintenant).

Et puis la belle chose s'est produite. Moteurs de recherche: MSN (maintenant - Bing) et Google commençaient à indexer les résultats de l'émission de «mon moteur de recherche» et de trafic de ravissements, qui à leur tour payé généreusement par Yumak.

Et pendant que des collègues Klepali Dara, je me cape de tels moteurs de recherche: différentes tailles, différentes sources pour pour plus d'informations. Pourquoi Dara et rediriger le trafic vers la FID, risquant d'entrer dans l'interdiction en raison d'une redirection lorsque vous pouvez faire, par exemple, des mini-sites thématiques, sans redirection? White Dorvai semble alors maintenant qu'ils les appellent. L'idyllium a duré longtemps - moins d'un an. Les déplacements d'algorithmes au début du MSN, alors Google a été enterré solutions similaires (Plus précisément, ils les ont rendu beaucoup moins efficaces).

Quelque part pendant l'effondrement du «système» dans MSN, je «chagrin» a pris l'un des domaines interdites - le site et le transféré un blog qui avait précédemment conduit sur une sorte de forum, puis dans le cadre du site de l'agence de publicité. .

3 fois! 3 fois marché sur des râteaux similaires: certaines personnes n'étudent pas même sur leurs propres erreurs :)

Abonnez-vous à notre newsletter et obtenez ce qui n'est pas inclus dans le blog, Annonces et sélections thématiques + plusieurs manuels (collecte des abonnés et informations de vente).

Instruction

Divisez votre moteur de recherche pour trois parties. La première partie est interface Moteur de recherche Web futur qui Écrit en langue php. La deuxième partie est l'index (ma base de données SQL) dans laquelle toutes les informations de pages sont stockées. La troisième partie est recherche robotqui indiqueront les pages Web et apportera leurs données dans l'index, le faire à Delphi.

Commençons à créer une interface. Créez un fichier index.php. Pour ce faire, divisez la page en deux parties en utilisant les tables. Première partie - rechercher Forme, deuxième - résultats de recherche. En haut, créez un formulaire qui enverra des informations au fichier index.php à l'aide de la méthode Obtention. Il sera situé trois Élément - Champ de texte et deux autres boutons. Un bouton est nécessaire pour l'envoi demander , La seconde est de nettoyer le champ (ce bouton n'est pas requis).

Donnez au champ de texte le nom "Search", le premier bouton (celui qui envoie la demande) le nom "Recherche". Le nom du formulaire lui-même, congé, tel quel - "Form1".

Connectez le fichier de configuration à relier à la base de données.

inclure "config.php";

Vérifiez si le bouton "Recherche" a été enfoncé.

si (Isset ($ _ obtenir ["bouton"])) (code exécuté si le bouton "Recherche" est enfoncé) Autres (code exécuté si le bouton "Recherche" n'est pas enfoncé)

Si vous appuyez sur le bouton, vérifiez la disponibilité de la requête de recherche.

si (Isset ($ _ obtenir ["recherche"])) ($ search \u003d £ _ obtenir ["Rechercher"];)

Si un requête de recherche Il y a ensuite une variable $ Recherches de recherche pour une requête de recherche.

si ($ Rechercher! \u003d "" && SHLEN ($ Recherche)\u003e 2) (code de recherche de base de données) else (echo "est réglé vide requête de recherche ou la chaîne de recherche contient moins de 3 caractères. ";)

Dans le cas où la requête de recherche satisfera à l'état supérieur, lancez le script de recherche lui-même.

Exécutez le cycle qui affichera les résultats de la recherche à travers Printf.
C'est tout. Si vous avez les connaissances nécessaires, vous pouvez ajouter des éléments dont vous avez besoin pour rechercher le moteur et faire votre propre algorithme de créature.

Les sites Web populaires attirent les utilisateurs non seulement avec la conception originale, le contenu thématique intéressant, mais également des services fonctionnels. Les gens vont sur Internet pour plus d'informations, produisant quotidiennement la recherche de leurs matériaux qui vous intéressent. Par conséquent, il est logique de créer moteur de recherche sur le placer.En fournissant aux utilisateurs la possibilité de trouver rapidement ce dont ils ont besoin sur des ressources sélectionnées manuellement.

Tu auras besoin de

  • - le navigateur;
  • - Connexion Internet;
  • - droits de modification des matières ou des modèles de page de site Web.

Instruction

Commencez à créer un système de recherche personnalisé basé sur la technologie Google. Entrez le panneau de service de gestion du système de recherche. Dans le navigateur, ouvrez la page avec l'adresse http://www.google.ru/cse/. Utiliser pour travailler avec votre système compte Google. Cliquez sur le bouton "Créer une recherche système". Si vous n'êtes pas autorisé Actuellement, cliquez sur le lien "Connexion". Entrez les données de compte Formulaire et cliquez sur Connexion. Si vous n'avez pas de commun compte google, Créez-le en cliquant sur le lien "Créer un compte à l'heure actuelle "Et effectuer les actions proposées.

Entrez les paramètres principaux du système de recherche d'utilisateur créé. Remplissez les champs «Nom» et «Description», sélectionnez la langue d'interface dans la liste déroulante Langue. Dans la zone de texte "Sites de recherche", entrez la liste de ressources, les informations à partir de laquelle seront présentées dans les résultats de la recherche à l'aide du système créé. Cliquez sur Suivant".

Obtenez un code JavaScript pour définir le moteur de recherche sur le site. Sélectionnez tout le contenu de la zone de texte située sur la page en cours. Copiez le contenu sélectionné dans le presse-papiers et enregistrez dans n'importe quel fichier.

Si vous avez déjà décidé sur le futur postal serveur , vous pouvez aller à l'inscription adresse e-mail. Le processus d'enregistrement sur n'importe quel portail est approximativement identique et offre de remplir le questionnaire et les instructions. question secrète, au cas où vous oublieriez le mot de passe de le sien E-mail. Remplir le questionnaire, il est nécessaire d'approcher de manière responsable, car si votre bureau de poste Il aura lieu, vous devrez fournir les données du registraire du questionnaire. Donc, si vous décidez prendre Alias \u200b\u200bou utiliser délibérément des données non sécurisées, il vaut la peine de les garder dans un endroit sûr.

Remarque

E-mailEn règle générale, devrait être offert sur des conditions libres. Mais il existe des sites qui le rendent pour un certain abonnement mensuel avec un nom de domaine magnifique et exclusif et une masse de fonctionnalités supplémentaires. Avant d'acheter boites aux lettresCela vaut la peine d'envisager toutes les possibilités. services gratuitsEt après avoir déjà accepté des offres commerciales.

Conseil utile

Lors du choix serveur de courrier Portez une attention particulière aux portails populaires proposant service Poste. En règle générale, ces portails sont testés par le temps et garantissent une fiabilité et une fonctionnalité.

Pour améliorer la fiabilité de la productivité placer. , informations de sécurité sur le site, accroître la fréquentation placer., Réduisez la charge sur le site, etc. fais miroir placer.. Il est entendu que dans le cas où la principale ressource due à un certain nombre de raisons n'est pas disponible, le visiteur relève de la ressource de réserve, c'est-à-dire le site miroir.

Avez-vous aimé l'article? Partager avec des amis: