Introduction sur le fonctionnement de notre moteur de recherche !

Tout sur notre moteur de home pages

Pitch du moteur de home pages



Freejungle.me est un moteur de recherche sur les home pages (ou moteur de sites), il se situe entre un moteur de recherche et un annuaire. La spécificité d'un moteur de home pages est d'indexer uniquement la page principale d'un site et ce, avec une mise à jour régulière effectuée par notre bot (OneShotYule) sur l'ensemble des pages soumises. Notre bot, mettra automatiquement à jour (scrapping), selon un temps donné entre les visites, la version html (texte uniquement), titre et description des home pages concernées.

Le système de recherche utilisé est le "Full Text", la pertinence des résultats sur une recherche, se calcul d'après un algorithme "maison" sur le titre (min 20 caractères), la description (min 100 caractères), les mots clés, l'url et le texte html de la home page indexée. De ce fait, la pertinence sera à son apogée avec deux à trois termes dans votre requête, à l'opposé, les moteurs de recherche comme Google et Bing seront plus pertinent sur des requêtes dites longues (avec plus de 4- 5 termes recherchés).

Concrètement, quand le visiteur recherche un terme spécifique (2 à 3 mots), vous n'aurez pas 400'000 résultats pour une requête et trier votre résultat, afin de savoir, si les sites proposés sont en rapport directement avec votre requête ou si le résultat provient d'un fil de discussion d'un forum, d'un commentaire etc.. Ce qui est très souvent le cas sur un moteur de pages (Google, , Bing etc..) sur des recherches dites courtes (1 à 2 mots clés).

Son originalité vient également du fait, que nous essayons de préserver votre vie privée. Nous ne sommes pas mieux ou moins bien que les autres moteurs, mais simplement différent et volontairement de taille humaine ! Indexation sur maximum 2'500 sites. Ça reste un hobby et une sorte d'engagement contre l'étalage de la vie privée sur le net.. Fondamentalement ça ne va rien changer aux habitudes des internautes, tout au moins, essayer de limiter la diffusion de vos infos personnelles, en recherchant occasionnellement des infos sur freejungle.me ! Ben oui, on ne va malheureusement pas remplacer Google et/ou Bing ! On a pas le même objectif et surtout, on ne va pas à la même vitesse.. ;-)


Affichage des résultats



L'affichage est assez simpliste et habituel dans sa forme. Il affiche un certain nombre de caractères avant et après le mot clé trouvé sur l'ensemble du texte de la home page concernée... Il faut savoir que l'affichage ne se fera pas comme sur un annuaire, basé généralement sur le titre et la description des balises métas avec quelquesfois, un complément de texte unique.

Exemple d'une recherche avec le mot clef "page":

favicon  

Freejungle.me, moteur de home pages francophone


freejungle.me


Freejungle.me, moteur de home pages francophone. annuaire soumettre une url en savoir plus aide et précisions derniers sites ajoutés update url (manuelle) vie privée historique opérateurs disponibles conditions d'utilisation contact index accueil moteur de recherche la pertinence des résultats sera à son apogée avec 2 à 3 termes dans votre requête, celle-ci est axée sur le thème principal d'un site. la recherche s'effectue uniquement sur la home page d'un site, ces mêmes home pages sont ré-indexées en moyenne tous les 7 jours. les home pages statiques (google, bing, facebook etc..) sont quant à eux indexés que 4 à 5 fois par année
16-05-2015 | Score: 3,65 | |     



Affichage Explication
Site avec protocole de transfert hypertexte sécurisé, httpS. La connexion à ce site est donc sécurisée.
Date de la dernière mise à jour du site, en l'occurence et pour cet exemple : 16.05.2015
Score: 3,65 Addition de la multiplication des mots-clefs trouvés sur le titre, description, url et le texte d'une home page, par odre de pertinence permettant la classification.
Pour envoyer un rapport de bug ou autre en lien avec cette url depuis notre formulaire de contact.
Site ne nécessitant pas d'une mise à jour régulière, Home page sans modification notable comme Google ou Facebook par exemple..
Site qui bénéficie d'une mise à jour hebdomadaire, mise à jour tous les 7 jours, soit 4 à 5 fois par mois.
Site qui bénéficie d'une mise à jour journalière, une à trois fois par jour selon la nature des informations disponibles !
Site avec un flux RSS permettant d'être directement visualisé en cliquant sur cette icône orange.


Algorithme par le poids des mots, Soundex et Levenshtein



Algorithme FJ

Notre algorithme “maison” est axé sur 3 points bien distincts. Pour commencer et comme tout se fait sous la paire php/mysql (un choix personnel, python peut mieux faire, mais je ne le connais que trop mal), la recherche s’effectue en fulltext, grâce à cela, je peux bénéficier d’un score sur mes résultats. Un score que je multiplie selon une clé spécifique, ainsi, elle donnera plus de poids au cinq champs suivants selon, le ou les mots clés sur le titre, la description, les keywords, l’url et le texte de la home page.

La recherche est sensible à l'orthographe pour une pertinence accrue sur 2 à 3 mots clés. Une recherche d’un mot au pluriel, n’ira pas chercher sa version au singulier pour y afficher plus de résultats. La correction orthographique se fera uniquement et pour autant, qu’il puisse retourner un mot se rapprochant au mieux, si la recherche effectuée ne retourne aucun résultat. Elle se fera uniquement sur les 2 premiers mots clés.

Suite à celà et si le résultats restent toujours vierges, les mots clés seront coupés selon leur longueur, un * y sera ajouté afin d’effectuer une nouvelle recherche en mode booléen. Pour exemple, si vous n’êtes pas certain de l'orthographe d’un mot, vous pouvez utiliser l’astérix * comme cet exemple pomm* va chercher pomme, pommes, pommier ou pommeau.

Petit explicatif de Soundex et Levenshtein


Soundex est un algorithme phonétique d'indexation de noms par leur prononciation, cette fonction qui est une chaîne de retour est régulièrement utilisée pour évaluer la similarité sonore entre 2 chaînes. Une utilisation courante consiste à utiliser cette fonction SQL pour améliorer la pertinence d'un algorithme dans le cas où un utilisateur se trompe dans l’orthographe d’un mot. Soundex est le plus largement connu des algorithmes phonétiques.

La distance de Levenshtein (ou déformation dynamique temporelle) est une distance, au sens mathématique du terme, entre mots ou chaînes de caractères (distance d'édition, de similarité) donnée par un calcul, une distance donnant une mesure de la différence entre deux chaînes de caractères. Elle est égale au nombre minimal de caractères qu'il faut supprimer, insérer ou remplacer pour passer d’une chaîne à l’autre. La distance de Levenshtein est nommée d'après le scientifique russe Vladimir Levenshtein qui a conçu cet algorithme en 1965.


Suggestion relative au mot clé



A droite des résultats d’une recherche, une colonne proposera une suggestion relative au premier mot clé de plus de 5 caractères, utilisé dans une recherche. J'obtiens cette liste, en utilisant le texte des 5 premiers résultats (plus précisément, jusqu’au 5ème site). Le texte d’une home page est pris en compte jusqu’au 16’000 premiers caractères.

Donc et avec les 5 premiers résultats, j’aurais à peu près un texte de 80’000 caractères ( 5*16’000), de ce “gros” texte, je vais extraire les 20 mots clés les plus utilisés. Ainsi, une vingtaine de combinaisons sera suggérée. Si le nombre de résultats à une recherche est inférieur à 2, cette colonne ne s'affiche pas.


Notre spider par scrapping



Si vous n'êtes pas certain de nous trouver dans vos logs (recherchez OneShotYule) et pour éviter de bloquer son passage, l'user agent s'affichera à peu près ainsi (le browser pourrait changer..):

"(compatible; Brave; OneShotYule/20.0.11; +https://freejungle.me/bagou.php)"


En savoir plus sur Freejungle