pyhanlp、HanLP安裝與使用

pyhanlp、HanLP安裝使用(Windows)

4.28更新:對於Python來說,官方給出了HanLP的Python接口,具體見:自然語言處理工具包HanLP的Python接口,使用一個簡單的pip命令就可以安裝使用了,但是仍然需要安裝一些環境,這裏簡單介紹一下,它的安裝過程中各種環境的安裝與之前是一樣的。
首先是安裝 Java Visual C++環境以及安裝 Jpype,這與之前一樣。
不同的地方在於之前安裝 jar 包以及配置 data 的過程可以使用一個 pip 命令來完成,在完成上述操作後,進入控制檯(Anaconda的話要進入 Anaconda Propmpt 然後 activate 到相應的環境下),然後使用:

pip install pyhanlp

注意在第一使用 from pyhanlp import *命令來導入的時候會自動下載data 以及jar包,整個過程大概由1G左右吧,所以首次運行會比較慢,第二次就快多了。
在完成安裝之後,使用與下面HanLP的測試代碼一樣,並且不需要啓動Java虛擬機的那些環境設置。在導入之後,HanLP對象會自動創建,對於其他的對象,則可以通過JClass來創建,例如:

StandardTokenizer = JClass("com.hankcs.hanlp.tokenizer.StandardTokenizer")
print(StandardTokenizer.segment("使用這個工具進行標準分詞"))

其他對象同理創建使用。

以下是原文

安裝Hanlp時候發現網上的一些介紹文章寫的有些模糊,這裏記錄一下Python環境下安裝與使用Hanlp。

首先,要明確HanLP是一個Java工具包,由很多模型、算法組成,而在學習自然語言的時候一般都會使用Python吧,因此,實質上是使用Python調用Hanlp。

具體安裝步驟:

1.安裝Java 和 Visual C++環境

首先是安裝JDK,這個在Oracle的官網上就可以下載到:JDK,選擇自己使用的版本即可,注意要勾選Accept那個按鈕才能下載。下載完成後安裝即可。不過JDK安裝之後要配置一下環境變量(例如在cmd下輸入java發下是“不是批處理XXX”),具體的方法網上有很多,例如:JDK環境變量配置
接下在安裝Visual C++,這個可以先看一下自己電腦是否已經安裝(我記得有些遊戲是會安裝這個的 =_=||。。),打開控制面板(可以win+Q,在小娜的搜索框裏直接搜索),在“程序”中找到已經安裝的程序:
在這裏插入圖片描述
類似這樣,這裏安裝的事Visual C++ 2015,如果沒有,也可以直接在網上搜索下載:Download Visual C++ 2015,安裝包很小的。

2.安裝Jpype

Jpype是使用Python調用Java 的工具包,安裝非常簡單,如果是使用Anaconda(一般都會推薦使用Anaconda的吧),的話,打開Anaconda的控制檯,使用activate進入想要安裝的那個虛擬環境,然後調用:

conda install -c conda-forge jpype1

即可,(那個Solving enviromnment可能會轉一小會),然後安裝選擇 Proceed ([y]/n)後輸入 y即可安裝。

3.測試Python環境下調用Java

測試仍然在Anaconda的控制檯下進行,使用Python可以在控制檯下進入Python環境,首先輸入:

from jpype import *

測試能否正常導入。然後測試開啓Java虛擬機,並進行簡單輸出測試

startJVM(getDefaultJVMPath(), "-ea")
java.lang.System.out.println("Hello")

其實下面的代碼就是Java中的輸出語句了。如果在那個黑框框中沒有顯示錯誤信息那就說明安裝成功了。可以關閉Java虛擬機:

shutdownJVM()

4.HanLP安裝

這裏主要是安裝HanLP的jar包和data文件,打開HanLP的github地址:HanLP,其實上面的安裝介紹已經很清楚了。
找到方法二:
在這裏插入圖片描述
首先下載data.zip(點擊那個鏈接,這部分也在直接clone的文件裏),然後下載jar和配置文件,解壓後能看到裏面的jar文件。
當然,建議這兩個都放在英文路徑下,例如:
在這裏插入圖片描述

5.修改配置文件

這部分在HanLP的github網頁上已經做了詳細介紹。
首先打開 hanlp.properties文件,在上面第二個下載中。
這裏只需要修改第一行即可(文件裏也寫了):
在這裏插入圖片描述
這裏將root=後面修改爲存放data的那個文件夾路徑,例如,我剛纔的路徑就是:root=D:/NLP/hanlp
至此,完成了HanLP的安裝。

6.測試

使用代碼來測試一下安裝的HanLP功能:
發現網上代碼都很經典啊。。都是一樣的,可以使用這裏的代碼測試一下:Python中調用自然語言處理工具HanLP手記
注意:

from jpype import *

startJVM(getDefaultJVMPath(), "-Djava.class.path=D:/NLP/hanlp/hanlp-1.7.3.jar;D:/NLP/hanlp",
         "-Xms1g",
         "-Xmx1g")

HanLP = JClass('com.hankcs.hanlp.HanLP')

這裏的路徑也就是前面存放jar和data的文件了,要注意這裏的路徑分隔符使用的是/,與上面配置文件的路徑符號不同,這個地方出錯可能會出現SyntaxError: (unicode error)這樣的錯誤,具體可以參考:Python 中 ‘unicodeescape’ codec can’t decode bytes in position XXX: trun錯誤解決方案

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章