jeudi, 12 décembre 2019 12:11

Détecter la langue d'une chaine de caractères

Écrit par

La problématique

Quel programmeur ne s'est jamais posé la question "comment détecter une langue à partir de phrases d'une langue". Si vous ne vous êtes jamais posé la question, sachez que moi, si. Et c'est en écrivant cet article que jk'ai compris sune partie de comment faire : utiliser un webservice qui va me le faire pour  moi. C'est y pas beau de faire travailler les autres ?

Le service interrogé : detectlanguage.com

Je pense que le nom du service est assez clair pour que je ne revienne que bièvement dessus. A partir d'une chaine de caractère, une phrase, le service va renvoyer la langue utilisée pour cette dite phrase. Malin mais finalement pas si complexe (dans son utilisation). Voyons tout ca au travers d'un exemple. ATTENTION : j'ai ouvert un compte gratuit mais n'aii que 1000 requêtes autorisées par jour. Si cela ne fonctionne pas, c'estt que mon quota est atteint. Mais rien ne vous empêche d'ouvrir un compte afin que vous puissiez faire vos tests.

La documentation fourni bien sûr comment lancer une  requête http pour avoir ce résultatl, mais elle vous bourni aussi des bibliothèques dans 5 langages différents vous permettant d'integrer ce service à vos projets. Fidèle à mes habitudes, afin de bien vous montrer, voila comment faire avec cURL.

Comment faire ?

Le formalisme du service est on ne peut plus simple :

$ curl https://ws.detectlanguage.com/0.2/detect -H "Authorization: Bearer <VOTRE_CLEF_API>" -d q=Hello+world

Voyons à quoi correspond quoi :

  • https://ws.detectlanguage.com/0.2/detect : C'est l'appel du  service web.
  • -H : on passe dans les entêtes de la requete votre clef API
  • -d : C'est la chaine, la phrase à analyser pour en trouver sa langue. Notez que tous les espaces sont remplacés par le signe plus, n'oubliez pas...

Le résultat

Ma clef étant temporaire, je vous livre le résultat obtenu, sous la forme d'une copie d'écran :

Capture du 2019 01 04 12 41 49

Bonne détection.

Lu 445 fois