天天看點

python3安裝pyhanlp方法與問題

問題:

直接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