回答編集履歴
11
些細
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
`MeCab.Tagger`の引数の文字列の中で、`-`で始まるオプション指定の次にディレクトリやファイルを指定するものに対して、空白が入っているディレクトリを`"`で括って指定できるのは**mecab-python3 パッケージが独自に入れた拡張要素**です。MeCabの公式Pythonバインディングや、mecabパッケージでは、空白を含むディレクトリやファイルは取り扱えません(というか`"`
|
1
|
+
`MeCab.Tagger`の引数の文字列の中で、`-`で始まるオプション指定の次にディレクトリやファイルを指定するものに対して、空白が入っているディレクトリを`"`で括って指定できるのは**mecab-python3 パッケージが独自に入れた拡張要素**です。MeCabの公式Pythonバインディングや、mecabパッケージでは、空白を含むディレクトリやファイルは取り扱えません。(というか`"`は引数の一部に認識されるだけですから)
|
2
2
|
辞書を空白が入ってないディレクトリにコピーして使うのが手っ取り早いでしょう。
|
3
3
|
|
4
4
|
----
|
10
追記
test
CHANGED
@@ -1,2 +1,15 @@
|
|
1
|
-
`MeCab.Tagger`の引数の文字列の中で、`-`で始まるオプション指定の次にディレクトリやファイルを指定するものに対して、空白が入っているディレクトリを`"`で括って指定できるのは**mecab-python3 パッケージが独自に入れた拡張要素**です。MeCabの公式Pythonバインディングや、mecabパッケージでは、空白を含むディレクトリやファイルは取り扱えません。
|
1
|
+
`MeCab.Tagger`の引数の文字列の中で、`-`で始まるオプション指定の次にディレクトリやファイルを指定するものに対して、空白が入っているディレクトリを`"`で括って指定できるのは**mecab-python3 パッケージが独自に入れた拡張要素**です。MeCabの公式Pythonバインディングや、mecabパッケージでは、空白を含むディレクトリやファイルは取り扱えません(というか`"`で括ると`"`をファイル名の一部と認識しますから)。
|
2
2
|
辞書を空白が入ってないディレクトリにコピーして使うのが手っ取り早いでしょう。
|
3
|
+
|
4
|
+
----
|
5
|
+
|
6
|
+
```
|
7
|
+
mecab = MeCab.Tagger('hoge')
|
8
|
+
```
|
9
|
+
のように意味を持たない(=そもそもオプションではない)引数を指定しても特にエラーになりませんでした。
|
10
|
+
したがって
|
11
|
+
```
|
12
|
+
mecab = MeCab.Tagger(r'C:\Program Files\MeCab\dic\NEologd\NEologd.20200910-u.dic')
|
13
|
+
```
|
14
|
+
は`C:\Program` と `Files\MeCab\dic\NEologd\NEologd.20200910-u.dic` という意味がないオプションが2つ渡され、ただ無視されているだけと推測します。
|
15
|
+
(mecabコマンドだと解析対象ファイルの指定にあたるものですから、Taggerのコンストラクタでは意味がないものとして無視するという挙動は特に不思議ではない気はします。C++のコードの中でどこの部分が無視する挙動を生んでいるのかは推量できませんでした)
|
9
些細
test
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
`MeCab.Tagger`の引数の文字列の中で、`-`で始まるオプション指定の次にディレクトリやファイルを指定する
|
1
|
+
`MeCab.Tagger`の引数の文字列の中で、`-`で始まるオプション指定の次にディレクトリやファイルを指定するものに対して、空白が入っているディレクトリを`"`で括って指定できるのは**mecab-python3 パッケージが独自に入れた拡張要素**です。MeCabの公式Pythonバインディングや、mecabパッケージでは、空白を含むディレクトリやファイルは取り扱えません。
|
2
2
|
辞書を空白が入ってないディレクトリにコピーして使うのが手っ取り早いでしょう。
|
8
修正
test
CHANGED
@@ -1,3 +1,2 @@
|
|
1
|
-
空白が入っているディレクトリを`"`で括って指定できるのはmecab-python3 パッケージが独自に入れた拡張要素です。
|
1
|
+
`MeCab.Tagger`の引数の文字列の中で、`-`で始まるオプション指定の次にディレクトリやファイルを指定するオプションに対して、空白が入っているディレクトリを`"`で括って指定できるのは**mecab-python3 パッケージが独自に入れた拡張要素**です。MeCabの公式Pythonバインディングや、mecabパッケージでは、空白を含むディレクトリ/ファイルは取り扱えません。
|
2
|
-
|
3
|
-
|
2
|
+
辞書を空白が入ってないディレクトリにコピーして使うのが手っ取り早いでしょう。
|
7
削除
test
CHANGED
@@ -1,41 +1,3 @@
|
|
1
|
-
エラーのこの部分
|
2
|
-
```
|
3
|
-
File "C:\Users\○○\anaconda3\envs\python3716\lib\site-packages\MeCab.py", line 355, in __init__
|
4
|
-
```
|
5
|
-
|
1
|
+
空白が入っているディレクトリを`"`で括って指定できるのはmecab-python3 パッケージが独自に入れた拡張要素です。
|
6
2
|
|
7
|
-
どうやってインストールしたかしりませんが、[mecabパッケージ](https://pypi.org/project/mecab/)のmasterブランチを使っているみたいです。
|
8
|
-
Tracebackはこれと一致しているように見えることからの推測です。
|
9
|
-
https://github.com/ikegami-yukino/mecab/blob/a96d0b3d2ab5a8f6ba9fbac605245f0e441a0779/mecab/python/MeCab.py#L355
|
10
|
-
(追記: github で tag がついていないけれど PyPI には [0.996.3](https://pypi.org/project/mecab/0.996.3/) が登録されていました。これでしょう)
|
11
|
-
|
12
|
-
**あなたが参考にしたというそのページ**の前の説明 https://nekonogorogoro.com/mecab_setup/#toc8 では
|
13
|
-
> 仮想環境に入ったら、次のコマンドでPython用のライブラリを導入します。
|
14
|
-
> pip install mecab-python3
|
15
|
-
と [mecab-python3 パッケージ](https://pypi.org/project/mecab-python3/) をインストールしましょうということになっています。
|
16
|
-
**あなたはその通りにしませんでしたね?** (あるいはその後からmecabパッケージをインストールしてしまったのかも?)
|
17
|
-
|
18
|
-
空白が入ってい
|
3
|
+
mecabパッケージだと空白も"も使えないので、辞書を空白が入ってないディレクトリにコピーしてどうにかするしかないです。
|
19
|
-
あなたが参考にしたというその人のやり方どおり、mecab-python3 パッケージを使いましょう。
|
20
|
-
|
21
|
-
私の想像どおりmecabパッケージをインストールしているのだったらアンインストールしてください。
|
22
|
-
|
23
|
-
----
|
24
|
-
|
25
|
-
別の可能性としてAnacondaを使用しているから、という理由もあるかもしれません。
|
26
|
-
あなたが参考にしたページは(おそらくですが)Anacondaを前提にしていません。
|
27
|
-
|
28
|
-
----
|
29
|
-
追記
|
30
|
-
mecab-python3、3.7 だとWIndows向けバイナリが提供されていないですね。諦めてmecabを使うしかないかもしれません。
|
31
|
-
|
32
|
-
とにかく
|
33
|
-
**使用するディレクトリに空白を入れない**
|
34
|
-
**MeCab.Tagger('-d 辞書ディレクトリ -u ユーザ辞書') の 辞書ディレクトリ や ユーザ辞書 を `"` で括らない**
|
35
|
-
の2点を満たすよう留意して作業すれば**動く可能性はあります**。
|
36
|
-
**書いてあるとおりにやっているなら** MeCab本体の64bit私家版をインストールしているはずなのでチャンスはありそうです。
|
37
|
-
|
38
|
-
手持ちのメモだと、mecabパッケージは、先にインストールしてあるMeCab64bit私家版の mecabrc を参照するらしいので、そちらを書き換えるとどうにかなるかもしれません。(なお、このメモ自体の信憑性は高くないです。私はWindowsを使いませんので)
|
39
|
-
動くようになるためにどこにどう辞書を配置してどう書くか(ディレクトリに空白は許されるのか? など)はわかりません。
|
40
|
-
|
41
|
-
(どうしても3.7でやりたいなら、形態素解析器のmecabコマンド本体から、C言語でビルドできるくらいのスキルが必要かもしれません)
|
6
脱字
test
CHANGED
@@ -15,7 +15,7 @@
|
|
15
15
|
と [mecab-python3 パッケージ](https://pypi.org/project/mecab-python3/) をインストールしましょうということになっています。
|
16
16
|
**あなたはその通りにしませんでしたね?** (あるいはその後からmecabパッケージをインストールしてしまったのかも?)
|
17
17
|
|
18
|
-
空白が入ってディレクトリを`"`で括って指定できるのはmecab-python3 パッケージが独自に入れた拡張要素です。
|
18
|
+
空白が入っているディレクトリを`"`で括って指定できるのはmecab-python3 パッケージが独自に入れた拡張要素です。
|
19
19
|
あなたが参考にしたというその人のやり方どおり、mecab-python3 パッケージを使いましょう。
|
20
20
|
|
21
21
|
私の想像どおりmecabパッケージをインストールしているのだったらアンインストールしてください。
|
5
追記
test
CHANGED
@@ -35,4 +35,7 @@
|
|
35
35
|
の2点を満たすよう留意して作業すれば**動く可能性はあります**。
|
36
36
|
**書いてあるとおりにやっているなら** MeCab本体の64bit私家版をインストールしているはずなのでチャンスはありそうです。
|
37
37
|
|
38
|
+
手持ちのメモだと、mecabパッケージは、先にインストールしてあるMeCab64bit私家版の mecabrc を参照するらしいので、そちらを書き換えるとどうにかなるかもしれません。(なお、このメモ自体の信憑性は高くないです。私はWindowsを使いませんので)
|
39
|
+
動くようになるためにどこにどう辞書を配置してどう書くか(ディレクトリに空白は許されるのか? など)はわかりません。
|
40
|
+
|
38
41
|
(どうしても3.7でやりたいなら、形態素解析器のmecabコマンド本体から、C言語でビルドできるくらいのスキルが必要かもしれません)
|
4
些細
test
CHANGED
@@ -31,8 +31,8 @@
|
|
31
31
|
|
32
32
|
とにかく
|
33
33
|
**使用するディレクトリに空白を入れない**
|
34
|
-
**MeCab.Tagger('-d 辞書ディレクトリ -u ユーザ辞書') の 辞書ディレクトリ や ユーザ辞書 を `"` で括らない
|
34
|
+
**MeCab.Tagger('-d 辞書ディレクトリ -u ユーザ辞書') の 辞書ディレクトリ や ユーザ辞書 を `"` で括らない**
|
35
|
-
の2点
|
35
|
+
の2点を満たすよう留意して作業すれば**動く可能性はあります**。
|
36
36
|
**書いてあるとおりにやっているなら** MeCab本体の64bit私家版をインストールしているはずなのでチャンスはありそうです。
|
37
37
|
|
38
38
|
(どうしても3.7でやりたいなら、形態素解析器のmecabコマンド本体から、C言語でビルドできるくらいのスキルが必要かもしれません)
|
3
追記
test
CHANGED
@@ -24,3 +24,15 @@
|
|
24
24
|
|
25
25
|
別の可能性としてAnacondaを使用しているから、という理由もあるかもしれません。
|
26
26
|
あなたが参考にしたページは(おそらくですが)Anacondaを前提にしていません。
|
27
|
+
|
28
|
+
----
|
29
|
+
追記
|
30
|
+
mecab-python3、3.7 だとWIndows向けバイナリが提供されていないですね。諦めてmecabを使うしかないかもしれません。
|
31
|
+
|
32
|
+
とにかく
|
33
|
+
**使用するディレクトリに空白を入れない**
|
34
|
+
**MeCab.Tagger('-d 辞書ディレクトリ -u ユーザ辞書') の 辞書ディレクトリ や ユーザ辞書 を `"` で括らないでください**
|
35
|
+
の2点に注意すれば**動く可能性はあります**。
|
36
|
+
**書いてあるとおりにやっているなら** MeCab本体の64bit私家版をインストールしているはずなのでチャンスはありそうです。
|
37
|
+
|
38
|
+
(どうしても3.7でやりたいなら、形態素解析器のmecabコマンド本体から、C言語でビルドできるくらいのスキルが必要かもしれません)
|
2
追記
test
CHANGED
@@ -7,6 +7,7 @@
|
|
7
7
|
どうやってインストールしたかしりませんが、[mecabパッケージ](https://pypi.org/project/mecab/)のmasterブランチを使っているみたいです。
|
8
8
|
Tracebackはこれと一致しているように見えることからの推測です。
|
9
9
|
https://github.com/ikegami-yukino/mecab/blob/a96d0b3d2ab5a8f6ba9fbac605245f0e441a0779/mecab/python/MeCab.py#L355
|
10
|
+
(追記: github で tag がついていないけれど PyPI には [0.996.3](https://pypi.org/project/mecab/0.996.3/) が登録されていました。これでしょう)
|
10
11
|
|
11
12
|
**あなたが参考にしたというそのページ**の前の説明 https://nekonogorogoro.com/mecab_setup/#toc8 では
|
12
13
|
> 仮想環境に入ったら、次のコマンドでPython用のライブラリを導入します。
|
1
些細
test
CHANGED
@@ -4,11 +4,11 @@
|
|
4
4
|
```
|
5
5
|
site-packages\MeCab.py が呼ばれているならあなたは mecab-python3 パッケージを使っていません
|
6
6
|
|
7
|
-
どうやってインストールした
|
7
|
+
どうやってインストールしたかしりませんが、[mecabパッケージ](https://pypi.org/project/mecab/)のmasterブランチを使っているみたいです。
|
8
|
+
Tracebackはこれと一致しているように見えることからの推測です。
|
8
|
-
|
9
|
+
https://github.com/ikegami-yukino/mecab/blob/a96d0b3d2ab5a8f6ba9fbac605245f0e441a0779/mecab/python/MeCab.py#L355
|
9
10
|
|
10
|
-
**あなたが参考にしたというそのページ**の前の説明では
|
11
|
-
https://nekonogorogoro.com/mecab_setup/#toc8
|
11
|
+
**あなたが参考にしたというそのページ**の前の説明 https://nekonogorogoro.com/mecab_setup/#toc8 では
|
12
12
|
> 仮想環境に入ったら、次のコマンドでPython用のライブラリを導入します。
|
13
13
|
> pip install mecab-python3
|
14
14
|
と [mecab-python3 パッケージ](https://pypi.org/project/mecab-python3/) をインストールしましょうということになっています。
|