|
Bonjour tout le monde,
Comme vous le savez j'ai l'habitude de travailler pour mon site perso et de plus en plus pour celui de JOL. Mais je continue à faire des petits projets au fur et à mesure de mon inspiration. L'idée est de lancer et présenter des concepts ou des outils simples qui puissent être reprise facilement par ceux qui le souhaitent. Le but est qu'ils puissent être personnalisés ou améliorés et éventuellement intégrés à un Fansite. Vous avez donc peut être déjà vu "Multiplay" la page web qui permet de jouer en multicompte d'une autre manière. Mais voici quelques news sur une petite gamme d'outils en cours d'étude ou de développement : EHD Ankama API : Le but est d'utiliser l'API fournie par le site officiel ankama, pour afficher sur une page les informations d'un item. Le but est ici de mettre en place un mode d'utilisation simple et d'implémenter des plugins sur la version existante (sur le site et les forums officiels) EHD Id Finder : La plupart des outils en place pour dofus (y compris les infobulles JOL) se basent sur l'identifiant unique de chaque objet. Le but de cet outil est de fournir une interface simple pour retrouver l'identifiant sans avoir besoin d'utiliser et de maintenir une base de donnée. Cet outil reprendra le principe de la recherche du moteur de recherche EHD2.0 et sera par la suite éventuellement monté sur la future version. EHD Natural Search : Il est souvent difficile de retrouver un objet de dofus lorsque l'on ne connait pas l'orthographe exacte du nom de cet objet. Le but de cet outil, complémentaire à "Id Finder" est de recherche le nom approximatif d'un objet. Par exemple : "arc isedésange" => "Arc Hisedaisange" J'ai les idées plutôt bien fixées sur les deux premiers outils, mais je ne sait pas trop par ou commencer pour le dernier. Si quelqu'un à déjà fait ce genre d'outils, ça m'intéresse. Je vous tient informé de mon avancement sur ces sujet, dans ce fil de discussion. Drallieiv. |
![]() |
|
Aller à la page... |
[Outils] Drallieiv EHD Work In Progress
Suivre Répondre |
|
Partager | Rechercher |
#159878
Invité
|
Message supprimé par son auteur.
|
![]() |
|
#159878 |
|
Celle utilisée sur le forum et le site officiel :
en JSON ou en XML Par contre vu qu'il n'y à pas de license précise sur l'API je pense qu'il ne faut pas en abuser et que les droits d'auteurs classique s'appliquent. Donc pour les petits et les grands, voici une première démo : http://www.herazade.com/EHD2.0/Dofus_Item_CrossOver/ A vous d'en faire bon usage. |
![]() |
|
|
C'marche pas sous IE
![]() Sous firefox apparament ca va. |
![]() |
|
|
Ca marche pas sous Opera non plus, mais très bon boulot Dralliev.
|
![]() |
|
Mystic-Zan [Mai] |
Voir le profil public |
Trouver plus de messages par Mystic-Zan [Mai] |
|
Mh, je comprend pas, le but de l'EHD Ankama API serait de refaire des balises de jeu (mais en mieux?)
teta> olol ie |
![]() |
|
|
Enorme en tout cas le finder
![]() |
![]() |
|
Love-white [Ota-Ule] |
Voir le profil public |
Trouver plus de messages par Love-white [Ota-Ule] |
|
Excellent boulot, J'espère qu'on verra vite la couleur
![]() |
![]() |
|
|
Je viens de faire une modif pour que ce soit à peu près compatible IE.
j'ai pas bien compris tes explications. Avec ta technique si le mot à renvoyer est "serpillière" et que recherche "serrepillère" tous les caractères sont décalés à cause du r en trop. Et sinon calculer un score de ressemblance entre la recherche et chaque résultat possible c'est beaucoup trop. Moi d'une manière logique, je pensait crée un index des noms des objets convertis en phonétique. On convertir la saisie en phonétique et on compare avec l'index. Est-ce que quelqu'un à une idée de la manière ou Google fonctionner par exemple : http://www.google.fr/search?hl=fr&q=brenkardi%E9 brenkardié => Essayez avec cette orthographe : brancardier |
![]() |
|
|
Comment ça marche ? La recherche s'appuie sur l'algorithme de Levenshtein. Elle recherche et compare deux chaînes et renvoie les occurences trouvé dans un tableau.
$keyword = Le mots clé qui à rien donné $table = Le nom de la table MySQL ou ce trouve les mots à comparer et a proposer (Donc mon cas la table en question correspond à un historique des recherches, mais ça pourrait carrement être un dictionnaire...) $fields = Array('champs1') doit correspondre aux champs dans lesquelles faire la recherche $Key = correspond à un champ ID $treeshold = doit correspondre à la taille divisé par 2 de $keywords si $keywords >=6 ----------------------------------------------------------------------------------------------- function search_keyword($keyword,$table,$fields,$key,$threshold){ if (!$threshold) if (strlen($keyword)<6) $threshold=round(strlen($keyword)/2); else $threshold=3; $keyword=strtolower($keyword); $res=mysql_query("SELECT * FROM ".$table); while ($item=mysql_fetch_object($res)) foreach ($fields as $field) { $words=explode(" ",$item->$field); foreach ($words as $word) if (levenshtein($keyword, strtolower($word)) < $threshold) { $result[]=array($item->$key,$field,$item->$field); break; } } if (!is_array($result)) return (false); else return ($result); } http://fr.wikipedia.org/wiki/Distance_de_Levenshtein C'est un peu comme la distance de hamming utilisé par ce forum pour le correcteur d'orthographe |
![]() |
|
|
Au final j'ai fait quelques tests avec certains des algos cités :
http://www.herazade.com/EHD2.0/NaturalSearch/ Un Levenshtein sur l'ensemble du nom Un Jaro-Winkler sur l'ensemble du nom Et un Levenshtein mot par mot sur un index des mots mais bon ça n'as pas l'air très satisfaisant Un exemple qui marche : http://www.herazade.com/EHD2.0/Natur...rtau+du+buftou |
![]() |
|
|
Je suis du même avis, c'est assez bof quoi :x
Va falloir créer un algo maison |
![]() |
|
|
les recherches que j'avais faites étaient plus efficace avec un algo de type phonex.
c'est pas une fonction native, mais ça peut être assez efficace. |
![]() |
|
|
Tu peux regarder au niveau du soundex pour le 3e outils. Un ami avait fait ça en Java et ça marchait plutôt bien pour des noms et prénoms. En gros les mots sont convertis en une suite de lettre/chiffre selon un algo et c'est cette série de caractère qui est comparé (même genre que l'algorithme de Levenshtein.
A voir ce que ça donne sur des chaines de caractère plus compliquées. |
![]() |
|
Suivre Répondre |
Fil d'ariane
Connectés sur ce fil1 connecté (0 membre et 1 invité)
Afficher la liste détaillée des connectés
|