刚开始用都不知道要怎么安装,包括什么文件。百度了下发现正常安装就可以用,不用下多余的东西,但是但是但是但是但是但是但是但是

用pycharm安装不行,pip安装不行,也是见鬼了。

解决方法:

1、手动安装JPype1

pip install D:\soft\JPype1-0.6.2-cp36-cp36m-win_amd64.whl 

这个安装包可以在这里下  https://www.lfd.uci.edu/~gohlke/pythonlibs/#jpype

注意如果出现 JPype1-0.6.3-cp36-cp36m-win_amd64.whl is not a supported wheel on this platform.是版本的问题,找到自己对应的版本
可看如下搭配更换版本: cp27 → CPython 2.7
cp34 → CPython 3.4
cp35 → CPython 3.5
cp36 → CPython 3.6
and
win32 → 32-bit version of ms-windows
win_amd64 → 64-bit version of ms-windows

2、安装pyhanlp

 pip install pyhanlp

3、找到pyhanlp安装目录

进入到如   。。。。\python\Lib\site-packages\pyhanlp\static目录

找到hanlp.properties文件修改root路径把上面青色路径加到root中(绝对路径)

4、测试是否可以用(cmd中输入hanlp segment 如果出现如下输出就证明可以用了)

c:\>hanlp segment
欢迎新老师
欢迎/v新/a老/a师n

----------------------------------------------------------------------------------------------------如果可以用了就不用再看下面的了-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 5、按照上面步骤不可用,接着这么做

https://pan.baidu.com/s/1UGHNatDivCuSaqiPvb29GA

用上面的网址下载解压找到里面的hanlp-1.7.2.jar和data文件夹

覆盖到。。。。\python\Lib\site-packages\pyhanlp\static路径中去

6.检查是否可用

终于可以用了  :)

7、以上是在cmd中测试的可以运行,但是到了pycharm中就不行了

调试代码:

#!/usr/bin/env python
# -*- coding: utf- -*- from jpype import * startJVM(getDefaultJVMPath(), "-Djava.class.path=G:\TextAnalysis\libs\hanlp-portable-1.3.1.jar;G:\TextAnalysis\libs")
HanLP = JClass('com.hankcs.hanlp.HanLP') my_words = u'HanLP是一个致力于向生产环境普及NLP技术的开源Java工具包' # 标准分词
print(HanLP.segment(my_words).toString()) #索引分词
IndexTokenizer = JClass('com.hankcs.hanlp.tokenizer.IndexTokenizer')
print(IndexTokenizer.segment(my_words).toString()) # 关键词提取
document = u"JPype是一个能够让 Python 代码方便地调用 Java 代码的工具," \
u"JPype并没有像IKVM(一款可以在.NET环境中运行JAVA代码的工具)那样实现自己的JVM," \
u"而是以pipe方式调用原生JVM。如果要使用JPype就需要先安装JDK。"
print(HanLP.extractKeyword(document, ).toString()) # 自动摘要
print(HanLP.extractSummary(document, ).toString()) shutdownJVM()

报错,还是一串乱码。。。。。。。。。。。。

然后到cmd中运行报错的中文是:::

十月 ,  :: 下午 com.hankcs.hanlp.HanLP$Config <clinit>
严重: 没有找到hanlp.properties,可能会导致找不到data
========Tips========
请将hanlp.properties放在下列目录:
Web项目则请放到下列目录:
Webapp/WEB-INF/lib
Webapp/WEB-INF/classes
Appserver/lib
JRE/lib
并且编辑root=PARENT/path/to/your/data
现在HanLP将尝试从D:\pythonworkspace2\source\a读取data……
十月 , :: 下午 com.hankcs.hanlp.corpus.io.IOUtil readBytes
警告: 读取data/dictionary/CoreNatureDictionary.txt.bin时发生异常java.io.FileNotFoundException: data\dictionary\CoreNatureDictionary.txt.bin (系统找不到指定的路径。)
十月 , :: 下午 com.hankcs.hanlp.dictionary.CoreDictionary load
警告: 核心词典data/dictionary/CoreNatureDictionary.txt不存在!java.io.FileNotFoundException: data\dictionary\CoreNatureDictionary.txt (系统找不到指定的路径。)
Traceback (most recent call last):
File "t2.py", line , in <module>
print(HanLP.segment(my_words).toString())
jpype._jexception.ExceptionInInitializerErrorPyRaisable: java.lang.ExceptionInInitializerError

解决:

1、配置hanlp.properties环境变量

2、把5中下载的data文件夹复制到项目中去

3、修改hanlp.properties文件,将目录改为 root=。。/你的项目目录/data(这一步我还没用,就已经可以正常运行程序了)

 

参考:

https://blog.csdn.net/wenwen360360/article/details/80971071 
https://blog.csdn.net/qq_34333481/article/details/89206083

https://www.biaodianfu.com/python-calls-hanlp-jar.html

https://www.cnblogs.com/ziyiang/articles/9885764.html

python安装 hanlp +使用 坑坑坑。。。填填填。。。的更多相关文章

  1. Appium+python自动化(十三)- 输入中文 - 一次填坑记(超详解)

    简介 无论你在哪里,在做什么都会遇到很多坑,这些坑有些事别人挖的,有些是自己挖的.别人挖的叫坑人,自己挖的叫自杀,儿子挖的叫坑爹.因此在做app自动化道路上也不会是一帆风顺的,你会踩很多坑,这些坑和你 ...

  2. superset的安装(win10)踩踩坑!AWSL

    基本安装参考https://www.jianshu.com/p/8b27ff71429f 按此方案装的时候会遇到各种flask版本不兼容的问题,所以 第一步:装好anaconda 第二部:保证好高于V ...

  3. Apache Web服务器 安装步骤 和遇到的坑

    Apache Web服务器是开发放源码的网页服务器,我们看到的网页都是上传到服务器然后呈现给用户的. 在开发中,在自己的电脑上安装Apache Web服务器,你的电脑也会成为服务器,配置文件,访问你的 ...

  4. 在Deepin系统上装Python 3.8遇到的那些坑

    - 作为一天时间在Deepin上都没装好Python的代表,我感觉有必要记录一下我自己的解决方法 坑1-- SSL/TLS 字样错误 "pip is configured wih locat ...

  5. 那些最全面的Windows10安装pytorch踩过的坑以及如何应用

    那些最全面的Windows10安装pytorch踩过的坑以及如何应用 一.pytorch简介 2017年1月,由Facebook人工智能研究院(FAIR)基于Torch推出了PyTorch.它是一个基 ...

  6. 在WIN SERVER 2016上安装DOCKER(带过坑)

    目录 1    概要    1 1.1    主要优势    1 2    在Windows Server上部署Docker    2 概要 博客使用Word发博,发布后,排版会出现很多问题,敬请谅解 ...

  7. Ubuntu 16.04 安装Mysql 5.7 踩坑小记

    title:Ubuntu 16.04 安装Mysql 5.7 踩坑小记 date: 2018.02.03 安装mysql sudo apt-get install mysql-server mysql ...

  8. Cloudera Manager 安装集群遇到的坑

    Cloudera Manager 安装集群遇到的坑 多次安装集群,但每次都不能顺利,都会遇到很多很多的坑,今天就过去踩过的坑简单的总结一下,希望已经踩了的和正在踩的童鞋能够借鉴一下,希望对你们能有所帮 ...

  9. 分享一下我在mysql5.6+mysql8数据库安装过程中的一些坑!

    Mysql5.6安装 下载好安装包后,在bin目录下用cmd打开,输入mysqld install [服务名]新建个服务 在windows+r输入services.msc即可查看服务 怎样使用mysq ...

随机推荐

  1. 何为KVM克隆和快照

    KVM的克隆.快照都是老生常谈的问题,资料也非常多,这里只是针对个人实验的记录,方便以后查阅. 虚拟机克隆 虚拟机的克隆操作是再频繁不过了,安装好第一台虚拟机后就可以进行基础设置,已此虚拟机为模板,以 ...

  2. eclipse 标记任务

    eclipse 标记任务 eclipse Task Tags: TODO -用来提醒该标识处的代码有待返回继续编写.更新或者添加.该标签通常在注释块的源文件顶部. FIXME -该标签用来提醒你代码中 ...

  3. EntityManager 的复杂查询

    EntityManager 是用来对实体Bean 进行操作的辅助类.他可以用来产生/删除持久化的实体Bean,通过主键查找实体bean,也可以通过EJB3 QL 语言查找满足条件的实体Bean.实体B ...

  4. 使用 Python 生成二维码

    在“一带一路”国际合作高峰论坛举行期间, 20 国青年投票选出中国的“新四大发明”:高铁.扫码支付.共享单车和网购.其中扫码支付指手机通过扫描二维码跳转到支付页面,再进行付款.这种新的支付方式,造就二 ...

  5. LINUX开启SAMBA服务

    samba,用于网络文件共享,类似于nfs, samba多用于win和linux之间 linux之间多用nfs c/s架构 smb协议 samba主要是两个服务,核心启动服务SMB,监听139TCP端 ...

  6. scrapy-redis 0.6.8 配置信息

    很多博客的db参数配置都不能用,所以记录一下该版本可用的配置 #启用Redis调度存储请求队列 SCHEDULER = "scrapy_redis.scheduler.Scheduler&q ...

  7. volume create: k8s-volume: failed: Host 172.31.182.142 is not in 'Peer in Cluster' state

    问题描述: 1.gluster peer status查询存在节点 2.创建volume失败提示节点不存在 排查方法: 1.hosts文件是否配置正确 2.检查防火墙是否打开,打开的话放行24007端 ...

  8. Windows Server 2008 R2(x64) IIS7+PHP5.6.30(FastCGI)环境搭建

    相关软件下载: 1.PHP下载地址: http://windows.php.net/downloads/releases/ 1.安装Microsoft Visual C++ 2012 Redistri ...

  9. 《linux就该这么学》课堂笔记13 网络会话、ssh、远程会话

    1.常见的网卡绑定驱动有三种模式—mode0.mode1和mode6 mode0(平衡负载模式):平时两块网卡均工作,且自动备援,但需要在与服务器本地网卡相连的交换机设备上进行端口聚合来支持绑定技术. ...

  10. am instrument 命令详解运行多个用例

    1 Instrument是什么? instrument为am命令的一个子命令.用于启动一个Instrumentation测试.首先连接手机或者模拟器,通过adb shell命令,进入shell层进行操 ...