Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2010-10-27 13:22:49 Compter le nombre d'occurrences de mots

galenskap
nouveau membre
Lieu: Paris
Date d'inscription: 2010-04-21
Messages: 6
Site web

Compter le nombre d'occurrences de mots



Bonjour à tous !

J'ai une petite idée derrière la tête, mais je n'ai pas du tout idée de comment m'y prendre... hmm
Voilà le truc : j'aimerais faire un programme qui compte le nombre d'apparitions de chacun des mots d'une page web (ou d'un fichier txt ou pdf si c'est plus faisable/simple) en vue d'inscrire les plus récurrents dans une base de données sql toute bête (#id/$mot/$nb) - mais ça, ça peut venir dans un deuxième temps, ce n'est pas encore trop long à faire à la main.
Si ça pouvait être fait en processing+php ce serait l'idéal, parce que je ne connais que ça. Mais je n'ai rien trouvé sur le net alors j'imagine que ce n'est pas faisable... Par contre j'ai trouvé quelque chose en java, est-ce qu'il est possible d'insérer du java dans processing (c'est la même base, non ?) ? (ceci dit j'ai rien compris aux propositions faites)
>> http://www.developpez.net/forums/d18381 … ce-string/

Enfin, comment "éliminer" les expressions courantes mais inintéressantes comme "le", "des", "parce que"... ?
Est-il possible d'utiliser une sorte de dictionnaire de mots interdits ?

Et la même chose avec des flux rss, ça appartient au domaine de la science fiction ? big_smile

J'ai l'impression d'être au pied d'une immense montagne...


edit : J'ai oublie de préciser où j'en étais : j'ai commencé avec processing ; j'ai réussi à "splitter" chaque mot d'un .txt. C'est pour la comparaison de chaque que je me triture la tête...

Dernière modification par galenskap (2010-10-27 13:30:43)

Hors ligne

 

#2 2010-10-27 15:09:19 Re : Compter le nombre d'occurrences de mots

emoc
@#@*$
Lieu: Quimper
Date d'inscription: 2008-01-28
Messages: 1576
Site web

Re: Compter le nombre d'occurrences de mots



Salut,

C'est possible de faire ça en php ou en processing, à partir d'un fichier texte ou d'une url. Rien d'insurmontable. Ca me paraît plus simple en php, surtout pour la connexion mysql

Pour php, tu peux t'y prendre comme ça (il y a surement plusieurs voies) :

- charger le contenu d'une page en utilisant CURL dans une chaine,
- splitter cette chaine en un tableau,
- parcourir ce tableau, et créer un tableau associatif (en ne gardant que les mots significatifs*) ou chaque mot (la clef) est associé à son nombre d'occurences (la valeur), c.a.d. pour chaque mot faire $mots["truc"] ++. A la fin de cette étape, tu auras un tableau du type

$mot["truc"] = 5
$mot["machin"] = 2
...

* pour cela il faut utiliser une table d'appauvrissement, c'est à dire un tableau qui contient tous les mots dont tu ne veux pas, et tester si le mot en cours appartient à cette table

Si tu cherches un exemple en processing : word cloud de Guy Yithzaki : http://www.openprocessing.org/visuals/?visualID=7042

Hors ligne

 

#3 2010-10-27 15:59:04 Re : Compter le nombre d'occurrences de mots

22_
membre
Lieu: paris
Date d'inscription: 2010-04-08
Messages: 189

Re: Compter le nombre d'occurrences de mots



Salut,

tu connais la loi de Zipf ? : http://fr.wikipedia.org/wiki/Loi_de_Zipf
si non, ça peut t'intéresser.

bon courage,

++

Hors ligne

 

#4 2010-10-27 18:16:08 Re : Compter le nombre d'occurrences de mots

galenskap
nouveau membre
Lieu: Paris
Date d'inscription: 2010-04-21
Messages: 6
Site web

Re: Compter le nombre d'occurrences de mots



Merci emoc !
J'y suis presque, maintenant ! J'ai fait l'essai avec un article du monde.fr c'est pas tout clean mais ça fonctionne. Par contre, il garde quelques balises html (je n'arrive pas à m'en débarasser) et reste sensible à la casse...
Dernière étape à part ces quelques détails : l'enregistrement des plus grosses valeurs dans la base de données... Mais plus tard, là j'en peux plus tongue

@22_ Non, je ne connaissais pas du tout la loi de Zipf... Les maths/probabilités c'est pas mon truc, mais d'un point de vue sociologique, c'est tout à fait intéressant, en effet... Merci !

Pour ceux que ça intéresse :

Code (php) :

Hors ligne

 

#5 2010-10-27 22:34:54 Re : Compter le nombre d'occurrences de mots

emoc
@#@*$
Lieu: Quimper
Date d'inscription: 2008-01-28
Messages: 1576
Site web

Re: Compter le nombre d'occurrences de mots



Tu peux utiliser strip_tags pour enlever les balises, et strtolower pour passer toute ta chaine en minuscules avant la recherche par expressions régulières.

Hors ligne

 

#6 2010-11-03 16:31:55 Re : Compter le nombre d'occurrences de mots

galenskap
nouveau membre
Lieu: Paris
Date d'inscription: 2010-04-21
Messages: 6
Site web

Re: Compter le nombre d'occurrences de mots



Ah ah ah, super, ça roule tout seul !
Dernier petit problème : le "à" qui reste quoi que je fasse. Pas grave.

Je mets les sources à disposition pour qui veut (zip joint).
Un grand merci smile

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024