問題:
直接pip install pyhanlp,會報錯:
ERROR: No matching distribution found for JPype
或者說缺少VC++環境:
error: Microsoft Visual C++ 14.0 is required.
分析:
其實沒有Microsoft Visual c++環境也是可以的,
可以先安裝jpype1,然後在pip install pyhanlp就行了。
解決辦法:
1. JPype需要手動安裝(至少我是)。
下載下傳JPype的whl檔案,終端切換到下載下傳的路徑,
執行pip install JPype1-0.6.3-cp36-cp36m-win_amd64.whl
2. 執行pip install pyhanlp,安裝成功。
安裝後的坑:
報錯1:找不到data路徑
解決辦法:
安裝完成後并不能使用,需要下載下傳一個jar包、data檔案和properties檔案(若有則不考慮)
路徑:D:\Program Files (x86)\Python\Python36\Lib\site-packages\pyhanlp\static
注:(1). data下載下傳後須解壓才能用
(2). properties檔案需要修改root路徑為本機上面的static路徑
報錯2:jpype._jvmfinder.JVMNotFoundException: No JVM shared library file (jvm.dll) found. Try setting up the JAVA_HOME environment variable properly.
解決辦法:
1.确認jdk已安裝,否則安裝 jdk
HanLP主項目采用Java開發,是以需要Java運作環境。
2.設定JDK的環境變量,可參考我另外一篇文章,JDK環境變量配置
3.使用pycharm64位打開
因為需要保證JDK位數、作業系統位數和Python位數一緻。pyhanlp在64位系統上通過了所有測試;在32位系統上可以運作但不做保證。
測試:
import jpype
# 獲得系統的jvm路徑
jvmPath = jpype.getDefaultJVMPath()
# 啟動虛拟機
jpype.startJVM()
# 執行JAVA代碼
jpype.java.lang.System.out.println("hello world")
# 關閉虛拟機
jpype.shutdownJVM()
至此,Hanlp就可以使用啦!
參考博文:
https://www.jianshu.com/p/709eae578336
https://www.cnblogs.com/panda-blog/p/9602039.html