日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Win11环境Mecab日语分词和词性分析以及动态库DLL not found问题(Python3.10)

發布時間:2024/1/2 python 55 coder
生活随笔 收集整理的這篇文章主要介紹了 Win11环境Mecab日语分词和词性分析以及动态库DLL not found问题(Python3.10) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

日語因為存在假名,會導致翻譯軟件進行翻譯時機翻味道過重的問題,比如積ん読(つんどく)這個詞,大多數軟件會翻譯成:堆積的讀,但其實是明明買了書卻不讀,光放著的意思。有時候也需要單獨查句子中的單詞釋義來理解句子的意思,但一看下去全是假名,無法像中文或者英文那樣進行簡單的分詞操作。

本次我們基于Python3.10的三方庫Mecab來對日語進行分詞和詞性分析。

安裝和配置Mecab

首先下載最新的Mecab0.996的64位安裝包:

https://github.com/ikegami-yukino/mecab/releases

隨后雙擊進行安裝,注意編碼選擇國標碼utf-8:

默認的Shift_JIS是日本電腦系統常用的編碼表,能容納全形及半形拉丁字母、平假名、片假名、符號及日語漢字。

當然如果您的電腦是日本系統,那就選擇Shift_JIS,但utf-8是通用的。

安裝成功后,最好把bin目錄添加到系統的環境變量中。

動態庫DLL not found問題

隨后安裝對應的Python依賴:

pip install mecab-python3

隨后導入到Mecab庫可能會報DLL not found。

這是因為系統找不到Mecab的運行庫libmecab.dll

此時,可以考慮將Mecab安裝目錄中的bin目錄里的libmecab.dll拷貝到系統的C:/windows/system32目錄中。

因為在Windows操作系統中,DLL文件是動態鏈接庫文件,其中包含許多可供其他程序調用的功能。如果您想要讓一個程序能夠使用一個DLL文件,需要確保該DLL文件已經正確地安裝到系統目錄中,而system32就是Win11系統的動態庫安裝目錄。

言而總之,將DLL文件放到C:\Windows\System32目錄下可以讓其對其他程序可見,但需要注意用戶權限問題。

Mecab日語分詞和詞性解析

隨后編寫代碼test.py:

import MeCab  
  
CONTENT = "私はpythonを使用して、プログラミングを勉強しています。積ん読"  
  
tagger = MeCab.Tagger()  
parse = tagger.parse(CONTENT)  
  
print(parse)

運行結果:

PS D:\jiyun\積云\boo3_public> python -u "d:\jiyun\積云\boo3_public\mecab_test.py"  
私      ワタクシ        ワタクシ        私-代名詞       代名詞                  0  
は      ワ      ハ      は      助詞-係助詞  
python  python  python  python  名詞-普通名詞-一般                      0  
を      オ      ヲ      を      助詞-格助詞  
使用    シヨー  シヨウ  使用    名詞-普通名詞-サ変可能                  0  
し      シ      スル    為る    動詞-非自立可能 サ行変格        連用形-一般     0  
て      テ      テ      て      助詞-接続助詞  
、                      、      補助記號-読點  
プログラミング  プログラミング  プログラミング  プログラミング-programming      名詞-普通名詞-サ変可能                  4  
を      オ      ヲ      を      助詞-格助詞  
勉強    ベンキョー      ベンキョウ      勉強    名詞-普通名詞-サ変可能                  0  
し      シ      スル    為る    動詞-非自立可能 サ行変格        連用形-一般     0  
て      テ      テ      て      助詞-接続助詞  
い      イ      イル    居る    動詞-非自立可能 上一段-ア行     連用形-一般     0  
ます    マス    マス    ます    助動詞  助動詞-マス     終止形-一般  
。                      。      補助記號-句點  
積ん読  ツンドク        ツンドク        積ん読  名詞-普通名詞-一般

可以看到這里將私はpythonを使用して、プログラミングを勉強しています。積ん読這個完整的日文句子切分成了單詞,并且標注了詞性,比如前文提到的積ん読這種詞。

如果是大型的文本,也能以讀文件的方式來進行切分和釋義:

import MeCab  
  
FILE_NAME = "sample.txt"  
  
with open(FILE_NAME, "r", encoding="utf-8") as f:  
    CONTENT = f.read()  
  
tagger = MeCab.Tagger()  
parse = tagger.parse(CONTENT)  
  
print(parse)

注意這里讀文件時需要聲明編碼是utf-8。

程序返回:

私      名詞,代名詞,一般,*,*,*,私,ワタシ,ワタシ  
は      助詞,係助詞,*,*,*,*,は,ハ,ワ  
python  名詞,一般,*,*,*,*,*  
を      助詞,格助詞,一般,*,*,*,を,ヲ,ヲ  
使用    名詞,サ変接続,*,*,*,*,使用,シヨウ,シヨー  
し      動詞,自立,*,*,サ変?スル,連用形,する,シ,シ  
て      助詞,接続助詞,*,*,*,*,て,テ,テ  
、      記號,読點,*,*,*,*,、,、,、  
プログラミング  名詞,サ変接続,*,*,*,*,プログラミング,プログラミング,プログラミング  
を      助詞,格助詞,一般,*,*,*,を,ヲ,ヲ  
勉強    名詞,サ変接続,*,*,*,*,勉強,ベンキョウ,ベンキョー  
し      動詞,自立,*,*,サ変?スル,連用形,する,シ,シ  
て      助詞,接続助詞,*,*,*,*,て,テ,テ  
い      動詞,非自立,*,*,一段,連用形,いる,イ,イ  
ます    助動詞,*,*,*,特殊?マス,基本形,ます,マス,マス  
。      記號,句點,*,*,*,*,。,。,。 

結語

Mecab最初由奈良先端科學技術大學院大學開發,目前由工藤拓(Taku Kudou)維護,作為Google日語輸入項目的一部分。MeCab的名稱源自開發者最喜歡的食物“mekabu”(和布蕪),這是一道由裙帶菜葉制成的日本菜肴。

MeCab的優勢包括準確的分析日語、快速的分析速度以及對不同操作系統的跨平臺支持。 MeCab是日語文本處理的重要工具,為日語文本分析和處理提供了強大的支持。

總結

以上是生活随笔為你收集整理的Win11环境Mecab日语分词和词性分析以及动态库DLL not found问题(Python3.10)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。