pip install JPype1-0.7.0-cp37-cp37m-win_amd64
pip install pyhanlp
然后命令行import pyhanlp时,会有一个下载的过程
部分可能要手动下载
#-*- coding:utf-8 -*- import pyhanlp import jpype jvm_path = jpype.getDefaultJVMPath() hanlp_classpath = r"D:\Users\xabcd\Anaconda3\Lib\site-packages\pyhanlp\static\hanlp-1.8.3.jar" jvm_arg = '-Djava.class.path='+hanlp_classpath #判断jvm进程是否开启 # if not jpype.startJVM(jvm_path,jvm_arg): # 如果没开启进程 (可能路径输错了,报进程已开启的错误) # jpype.startJVM(jvm_path,jvm_arg) # 则进行开启 HanLP = jpype.JClass('com.hankcs.hanlp.HanLP') text = "嘿嘿嘿,这是第一个关于HanLP的测试!" print('1-standard segment',HanLP.segment(text)) # [嘿嘿嘿/o, ,/w, 这/rzv, 是/vshi, 第/mq, 一个/mq, 关于/p, HanLP/nx, 的/ude1, 测试/vn, !/w] HanLPTokensizer = jpype.JClass('com.hankcs.hanlp.tokenizer.NLPTokenizer') print('2-NLP segment',HanLPTokensizer.segment(text)) # 2-NLP segment [嘿嘿嘿/o, ,/w, 这/r, 是/v, 第一个/m, 关于/p, HanLP/nx, 的/u, 测试/vn, !/w] # 自定义词典 CustomDictionary = jpype.JClass('com.hankcs.hanlp.dictionary.CustomDictionary') text2="灵山学院攻城狮逆袭单身狗,走向认证巅峰" #错别字看看 print('3-NLP segment',HanLPTokensizer.segment(text2)) # 2-NLP segment [灵山学院攻城狮/nt, 逆袭/v, 单身/n, 狗/n, ,/w, 走向/v, 认证/v, 巅峰/n] CustomDictionary.add('攻城狮') CustomDictionary.add('灵山') CustomDictionary.add('学院') print('4-NLP segment',HanLPTokensizer.segment(text2)) paragraphs = "SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里没有用NLTK,所有的算法都是自己实现的,并且自带了一些训练好的字典。注意本程序都是处理的unicode编码,所以使用时请自行decode成unicode。" print('abatract key words',HanLP.extractKeyword(paragraphs,5)) print('summary',HanLP.extractSummary(paragraphs,2)) # 结果和snownlp一样
其它:
(1)pyhanlp (2)安装按照:
step1:下载 jpyre1。whl,然后在Terminal或者 直接在cmd里面 pip install JPype1-0.7.0-cp37-cp37m-win_amd64.whl
step2:pip install pyhanlp
step3:在python consol里面,第一次调用: import pyhanlp,自动下载jar包、data文件(1个G)等。
(3)Hanlp的功能演示 http://hanlp.com/ https://github.com/hankcs/HanLP