Mac OS 10.9.4 Python 2.7
MeCab est requis pour utiliser CaboCha
La dernière version au moment de la rédaction est la 0.58 http://crfpp.googlecode.com/svn/trunk/doc/index.html#download
Décompressez
$ cd CRF++-0.58
$ ./configure
$ make
$ make install
$ cd python
$ sudo python setup.py install
La dernière version au moment de la rédaction est la 0.996 https://code.google.com/p/mecab/
À partir des téléchargements
--mecab-0.996.tar.gz (corps mecab)
Téléchargez et décompressez.
$ cd mecab-0.996
$ ./configure
$ make
$ sudo make install
$ cd ..
$ cd mecab-python-0.996
$ sudo python setup.py install
$ cd ..
$ cd mecab-ipadic-2.7.0-20070801
$ ./configure
$ make
$ sudo make install
Il n'y a pas de tel fichier ou répertoire
Si on vous dit
#### **`sudo apt-get install python2.7-dev`**
```7-dev
Essayez de bouger
```bash
$ mecab
Je suis Sakamoto et
Sakamoto? ????,????,*,*,*,*,*
?? ̾??,??ͭ̾??,?ȿ?,*,*,*,*
??Mais????,????,*,*,*,*,*
EOS
Les caractères sont déformés. Il semble que ce ne soit pas utf-8 si le code de caractère du dictionnaire est la valeur par défaut.
Accédez au répertoire mecab-ipadic et reconfigurez en UTF-8. Nettoyer puis reconfigurer
$ make clean
$ ./configure --with-charset=utf8
$ make
$ sudo make install
Ubuntu
libmecab.so.2: cannot open shared object file: No such file or directory
Si on vous dit
```sudo ldconfig ```
CA a l'air d etre bon
Essayez de l'utiliser.
```bash
$ mecab
Je suis Sakamoto et
Sakamoto substantif,Nomenclature propriétaire,Nom d'une personne,Nom de famille,*,*,Sakamoto,Sakamoto,Sakamoto
Est un verbe auxiliaire,*,*,*,Mort spéciale,Forme basique,est,mort,mort
Est un assistant,Assistant de connexion,*,*,*,*,Mais,Géorgie,Géorgie
EOS
fixé.
Au fait, le paramétrage de mecab est écrit en mecabrc.
$ sudo find / -name "mecabrc"
/usr/local/etc/mecabrc
$ sudo emacs /usr/local/etc/mecabrc
C'était comme ça par défaut
;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
dicdir = /usr/local/lib/mecab/dic/ipadic
; userdic = /home/foo/bar/user.dic
; output-format-type = wakati
; input-buffer-size = 8192
; node-format = %m\n
; bos-format = %S\n
; eos-format = EOS\n
Il semble que dicdir soit un répertoire de données de dictionnaire.
La dernière version au moment de la rédaction est la 0.68 https://code.google.com/p/cabocha/
Téléchargez et décompressez cabocha-0.68.tar.bz2 depuis Téléchargements
$ cd cabocha-0.68
$ ./configure
$ make
$ sudo make install
$ cd pythin
$ sudo python setup.py install
import MeCab
mt = MeCab.Tagger("-Ochasen")
print mt.parse("Je suis Sakamoto et")
Sakamoto Sakamoto Sakamoto Noun-Nomenclature propriétaire-Nom d'une personne-Nom de famille
C'est la mort. Verbe auxiliaire spécial / forme de base de la mort
Gaga est un assistant-Assistant de connexion
EOS
C'est ennuyeux de ne pas pouvoir y aller à moins que je fasse très attention au code des caractères.
# coding: utf-8
import MeCab
mt = MeCab.Tagger("mecabrc")
res = mt.parseToNode("Je suis Sakamoto et")
while res:
print res.surface
print res.feature
res = res.next
BOS/EOS,*,*,*,*,*,*,*,*
Sakamoto
nom,固有nom,Nom d'une personne,Nom de famille,*,*,Sakamoto,Sakamoto,Sakamoto
est
Verbe auxiliaire,*,*,*,Mort spéciale,Forme basique,est,mort,mort
Mais
Particule,接続Particule,*,*,*,*,Mais,Géorgie,Géorgie
BOS/EOS,*,*,*,*,*,*,*,*
Il y avait de nombreuses implémentations qui séparaient res.feature avec ",", mais je me demande s'il n'y a pas d'autre choix que de le faire. Eh bien, cela ne semble pas être un problème, alors je vais essayer.
# coding: utf-8
import MeCab
mt = MeCab.Tagger("mecabrc")
res = mt.parseToNode("Je suis Sakamoto et")
while res:
print res.surface
arr = res.feature.split(",")
print "Partie: " + arr[0]
res = res.next
Partie: BOS/EOS
Sakamoto
Partie:nom
est
Partie:Verbe auxiliaire
Mais
Partie:Particule
Partie: BOS/EOS
Si vous ne définissez pas res = res.next au lieu de res.next, vous bouclerez naturellement indéfiniment. Je suis accro à l'utilisation de Java.
Je l'écrirai à nouveau si j'essaye d'utiliser.
Recommended Posts