Améliorer la pertinence des résultats lors d'une recherche sur un moteur en java

loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011 - 9 juil. 2010 à 02:12
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011 - 17 juil. 2010 à 12:58
Bonjour !
J'ai un petit moteur de recherche que j'ai récupéré sur un site et que j'ai modifié (un peu...^^) pour le rendre plus personnel, mais là n'est pas le problème. En fait j'aimerais améliorer la pertinence des résultats, par exemple : afficher les mots clés en gras dans les descriptions des sites, afficher des sites dans un ordre de pertinence (j'ai l'impression que les sites s'affiche dans l'ordre dans lequel ils sont dans la BDD)...
je sais afficher les sites par catégorie, selon la présence ou non dans leur url, titre ou description du mot clé recherché mais toujours ce problème de pertinence... merci d'avance pour votre aide et à bientôt !
A voir également:

10 réponses

loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
9 juil. 2010 à 02:13
si vous souhaitez voir la source

http://www.javascriptfr.com/forum/sujet-MOTEUR-RECHERCHE-AFFICHER-NOMBRE-RESULTATS_1451749.aspx

déja dans ce precedent topic mais je peux la reposter ici si vous préférez !
encore merci de votre aide !
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
9 juil. 2010 à 18:20
Bonjour,
Pertinence d'une page....
les algorithmes des principaux moteurs de recherche sont tenus au secret et évolue dans le temps.

Il va te falloir mettre la main à la patte, récupération des mots clés, recherche des mots les plus fréquents dans la page mais qui on un rapport avec le titre, les header, H1..., décortiquer les pages que tu veux mettre en référence dans ta base de données...etc...etc...

bon courage
;O)
0
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
9 juil. 2010 à 23:45
ya til des codes javascript permettant de réaliser quelques petits trucs...
par exemple pour les mots clés à mettre en gras dans les descriptions des sites... ou dautre trucs... merci pour ta reponse et merci encore davance pour les futurs! sil y en a...
0
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
9 juil. 2010 à 23:49
deja, existe-til un moyen pour les classer a laffichage et non les afficher selon leur ordre dans la bdd...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
10 juil. 2010 à 10:29
Bonjour,
...pour les mots clés à mettre en gras dans les descriptions des sites...
en utilisant les expressions régulières par exemple

existe-til un moyen pour les classer a laffichage...
il y a la méthode sort des tableaux, mais il est peut être plus judicieux de les ordonner dans la BdD par ordre de pertinence ou encore de gérer un champ de classement

Pour plus d'informations, il y a entre beaucoup d'autres
Comment fonctionne un moteur de recherche?
Comment créer un moteur de recherche interne?


;O)
0
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
11 juil. 2010 à 12:49
Merci pour cette réponse !
Les ordonner dans la BdD j'y avais déjà pensé mais cela va me prendre du temps bien entendu.
En plus de ce classement "manuel", pourrais-tu m'en dire plus sur la gestion d'un champ de classement ?
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
12 juil. 2010 à 18:34
Bonjour,
pas un spécialiste loin s'en faut...

Je pensais à un tableau de mots clés, qui pointe vers un tableau d'Url dans lequel ont met la note, description et ce que l'on veut...

La recherche ne s'effectuant dans ce cas que sur les mots clés

C'est à la louche bien sûr !

Une base de données irait très très bien pour réaliser cela !
;O)
0
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
13 juil. 2010 à 00:43
Je réfléchis à tout ca...

En attendant, de quelle manière puis-je modifier ce code afin d'afficher les mots clés en gras :

if (links[q].Desc.toLowerCase().indexOf(keyword) != -1) {
document.write("
");
document.write("
[ + links[q].URL + " + links[q].Name + "]
");
document.write( links[q].Desc + "
");
document.write("
"+links[q].URL +"

");
document.write("
");
count++;
continue;
}

(par exemple si le mot clé "magie", recherche par un visiteur, est présent dans la description comment puis-je le mettre en gras)
0
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
13 juil. 2010 à 18:32
Bonjour,
comme je te l'ai déjà suggéré dans un précédent topic, il me semble qu'une expression régulière pour remplacer le MotCle par un MotCle devrait faire l'affaire...
cela devrait ressembler à cela ou presque
//-- definition des tags encadrant
var TagDeb = ''; // balise GRAS et en bleu
var TagFin = '<\/font><\/b>';             // fermeture de la balise
//-- le mot cle a trouver
var szMotCle  = "cartes";                 // par exemple
//-- la chaine qui contient le mot cle
var szDesc = "Jeu de 52 cartes";          // par exemple
//-- l'expression reguliere pour le remplacement le lien en fin de post
var szReg = new RegExp( "\\b(" + szMotCle + ")\\b" , "gi");
//-- recuperation dans szDesc de la nouvelle chaine
szDesc = szDesc.replace( szReg, TagDeb +"$1" + TagFin);
//-- affichage resultat
alert(szDesc);

pour plus d'info sur les RegExp à voir

A toi de jouer...
;O)
0
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
17 juil. 2010 à 12:58
Merci pour ta réponse. J'ai réussi à faire ce que je voulais en moins de 30 minutes (je crois), c'est génial ! Je suis ravi de progresser comme cela grâce au forum. Merci beaucoup à tous et plus particulièrement à ceux qui répondent sur les forums ! Merci encore !
0
Rejoignez-nous