安裝和運行HanLP詳解

安裝簡介

pyhanlp 安裝相對比較簡單,分爲以下幾步:

1.使用 pip install pyhanlp 安裝

2. 下載數據並將放至指定的目錄下

主程序安裝成功後,由於還需要字典和模型數據,所以需要下載安裝,但是由於數據包有幾百兆,所以很容易安裝失敗。我們可以使用第三方工具下載,然後將數據放至在以下文件夾 C:\ProgramData\Anaconda3\Lib\site-packages\pyhanlp\static 即可。具體包的位置可以通過以下錯誤信息獲得。如下所示,在最後一行提示 c:/programdata/anaconda3/lib/site-packages/pyhanlp/static\data 不存在,這個路徑即是數據路徑。

C:\Users\pc>hanlp segment
Traceback (most recent call last):
  File "c:\programdata\anaconda3\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\programdata\anaconda3\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\ProgramData\Anaconda3\Scripts\hanlp.exe\__main__.py", line 5, in <module>
  File "c:\programdata\anaconda3\lib\site-packages\pyhanlp\__init__.py", line 145, in <module>
    _start_jvm_for_hanlp()
  File "c:\programdata\anaconda3\lib\site-packages\pyhanlp\__init__.py", line 77, in _start_jvm_for_hanlp
    HANLP_DATA_PATH)
ValueError: 配置錯誤: 數據包 c:/programdata/anaconda3/lib/site-packages/pyhanlp/static\data 不存在,請修改配置文件中的root

如以上所示,將壓縮包解壓至在 c:/programdata/anaconda3/lib/site-packages/pyhanlp/static 目錄下即可,解壓後的 static 目錄下的結構如下所示。

C:/programdata/anaconda3/lib/site-packages/pyhanlp
├─static
│  ├─data
│  │  ├─dictionary
│  │  │  ├─custom
│  │  │  ├─organization
│  │  │  ├─other
│  │  │  ├─person
│  │  │  ├─pinyin
│  │  │  ├─place
│  │  │  ├─synonym
│  │  │  └─tc
│  │  └─model
│  │      ├─crf
│  │      │  └─pku199801
│  │      ├─dependency
│  │      └─perceptron
│  │          ├─ctb
│  │          ├─large
│  │          ├─pku1998
│  │          └─pku199801
│  └─__pycache__
└─__pycache__

注意事項

  • 完成的HanLP的程序的名稱是 pyhanlp,而不是 hanlp
  • 如下所示,由於網絡原因,有可能在安裝時會出錯而中斷,只需多試幾次即可。
$ pip install pyhanlp
Collecting pyhanlp
  Downloading https://files.pythonhosted.org/packages/87/06/95b417a4c19d1d529f331ae6a3923c3d556916f8c1846be926322b1d2915/pyhanlp-0.1.57.tar.gz (85kB)
     |████████                        | 20kB 2.8kB/s eta 0:00:24ERROR: Exception:
Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 397, in _error_catcher
...
...
(中間省略若干行)
...
...
  File "C:\ProgramData\Anaconda3\lib\site-packages\pip\_vendor\urllib3\response.py", line 402, in _error_catcher
    raise ReadTimeoutError(self._pool, None, 'Read timed out.')
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.

運行

Eclipse運行方法

  1. 新建項目
  2. 將[1]/hanlp-1.7.5.jar引入至項目中
  3. 將[1]/hanlp.properties複製到在程序的[2]目錄下(如果不行在src目錄下也放一個)
    參考目錄
    [1] C:\ProgramData\Anaconda3\Lib\site-packages\pyhanlp\static
    [2] C:\Users\pc\eclipse-workspace\HanlpDemo\bin
    示例程序
package Test001;
import com.hankcs.hanlp.HanLP;
public class Demo1 {
	public static void main(String[] args) {
		System.out.println(HanLP.segment("你好,歡迎使用HanLP!"));
	}
}

Python運行方法

直接編寫如下代碼即可運行。

#coding=utf-8
from pyhanlp import *
print(HanLP.segment('你好,歡迎在Python中調用 HanLP的API'))
發佈了323 篇原創文章 · 獲贊 91 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章