1、pyltp简介

pyltp 是哈工大自然语言工作组推出的一款基于Python 封装的自然语言处理工具(轮子),提供了分词,词性标注,命名实体识别,依存句法分析,语义角色标注的功能。

2、pyltp安装方法

  • 安装环境:windows10,python3.6

2.1.安装pyltp库

安装方法一:使用pip命令安装

pip install pyltp

注:此种方法大概率会失败,会出现较多问题,如VC++编译环境缺少。

安装方法二:使用whl轮子安装

轮子下载地址:

链接:https://pan.baidu.com/s/1Jbw6IjVbb-URZCHvh3FNDQ
提取码:i3le

pyltp-0.2.1-cp35-cp35m-win_amd64.whl(python3.5,64位)
pyltp-0.2.1-cp36-cp36m-win_amd64.whl(python3.6,64位)(根据我的编译环境,下载这个)

下载好后,在安装包目录下,打开系统命令框,输入:

pip install pyltp-0.2.1-cp36-cp36m-win_amd64.whl

即可安装成功。

2.2.pyltp数据包安装

pyltp要能实现分词、词性标注、命名实体识别,还需要安装数据包以及模型。请确保下载的模型版本与当前版本的 pyltp 对应,否则会导致程序无法正确加载模型。

  • pyltp 版本:0.2.0-0.2.1
  • 对应LTP模型 版本:3.4.0

模型下载地址:https://pan.baidu.com/share/link?shareid=1988562907&uk=2738088569#list/path=%2F

根据需要,我们下载3.4版本的模型数据。

下载后,可以解压到任意位置,C盘,D盘、E盘都行,为了方便查找数据,我将模型文件解压到我的pyltp库文件中。如下图:

1. 官方的下载模型文件,ltp_data并解压到任意位置(注意点:模型的路径最好不要有中文,不然模型加载不出),
2. 解压后得到一个大于1G的文件夹,确保此文件夹名称为ltp_data,位置任意,但在Python程序中一定要指明这个路径。
3. LTP提供的模型包括:(在ltp_data文件夹里面)
cws.model       分句模型,单文件
pos.model       词性标注模型,单文件
ner.model       命名实体识别模型,单文件
parser.model       依存句法分析模型,单文件
srl_data/           语义角色标注模型,多文件(文件夹srl)(注意:按照官网提示注:3.4.0 版本 SRL模型 pisrl.model 如在windows系统下不可用,可以到官网“此链接” 下载支持windows的语义角色标注模型。)
2017/06/15 16:42 182,672,934 cws.model
2017/07/07 15:47 260 md5.txt
2017/06/15 15:19 22,091,814 ner.model
2017/06/15 16:26 367,819,616 parser.model
2017/06/15 16:00 196,372,381 pisrl.model
2017/06/15 16:43 433,443,857 pos.model
2017/07/07 15:47 6 version
      7 个文件 1,202,400,868 字节
      2 个目录 108,015,374,336 可用字节
参考:https://blog.csdn.net/shuihupo/article/details/81545335

参考资料:

官方使用文档:https://github.com/HIT-SCIR/ltp

Python文档说明地址:https://github.com/HIT-SCIR/pyltp

3、问题汇总

pyltp安装过程中问题汇总:

问题一:python版本不是3.6,为3.7或者更高的版本,安装轮子失败

原因:目前pyltp库最高支持python3.6版本,更高版本的python安装会出错。

解决方法:1、将你的python版本降级,降到3.6版本,降级方法,百度。

     2、更改轮子名称,如pyltp-0.2.1-cp36-cp36m-win_amd64.whl(python3.6,64位),更改为pyltp-0.2.1-cp37-cp37m-win_amd64.whl(python3.7),亲测有效。

问题二:使用方法一安装出现VC++错误,

原因:你的电脑确实VC++编译环境,需要安装特定的VC++支持数据包。

解决方法:安装支持环境,下载下面的exe文件,安装VC++编译环境。

链接:https://pan.baidu.com/s/1za9j5p4YxxFle6-MT3NKMQ
提取码:y70v

4、pyltp简单使用

# -*- coding: utf-8 -*-
import os
LTP_DATA_DIR = r'E:\tool\python\Lib\site-packages\pyltp-0.2.1.dist-info\ltp_data' # ltp模型目录的路径
cws_model_path = os.path.join(LTP_DATA_DIR, 'cws.model') # 分词模型路径,模型名称为`cws.model` from pyltp import Segmentor
segmentor = Segmentor() # 初始化实例
segmentor.load(cws_model_path) # 加载模型
words = segmentor.segment('大明王很喜欢一个人') # 分词
print ('\t'.join(words))
segmentor.release() # 释放模型
E:\tool\python\python.exe "E:/学习笔记/NLP学习/NLP code/情感分析2/test1.py"
大明王 很 喜欢 一个 人 Process finished with exit code 0

5、总结

专注、认真

pyltp安装教程及简单使用的更多相关文章

  1. scala安装教程及简单配置

    本文将介绍以下内容:Windows下安装scala运行环境,安装编译工具并简单配置,实现著名的“Hello,World". 一,Windows下安装scala运行环境 1.配置jdk,因为s ...

  2. SonarQube安装教程与简单使用(基于Centos7,JDK1.8)

    SonarQube 若要转载本文,请务必声明出处:https://www.cnblogs.com/zhongyuanzhao000/p/11686522.html 概念: SonarQube是一种自动 ...

  3. 「下载神器」aria2 懒人安装教程 [Windows]

    是一款开源.轻量级的多协议命令行下载工具,支持 HTTP/HTTPS.FTP.SFTP.BitTorrent 和 Metalink 协议,拥有众多第三方支持插件,被誉为「下一代下载工具」和「下载神器」 ...

  4. Vs Code 2019软件安装教程及常用的入门设置

    小编认为VsCode是一款非常好用的编辑器,插件丰富,支持的语言种类非常多.我所使用VsCode主要打一些前端的代码,自己感觉very good. 点击运行. 按图所示操作. 安装教程很简单的,主要是 ...

  5. asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

  6. Eclipse 00: 安装教程 + 汉化 + 简单创建java项目

    Java 安装教程(Eclipse) 目录: 要安装Java 要分两个步骤: 1.JDK的安装 2.Eclipse的安装 3.Eclipse汉化 4.Eclipse创建简单java项目 1和2的顺序不 ...

  7. Java 安装教程(Eclipse) + 汉化 + 简单创建java项目

    Java 安装教程(Eclipse) 要安装Java 要分两个步骤: 1.JDK的安装 2.Eclipse的安装 3.Eclipse汉化 4.Eclipse创建简单java项目 1和2的顺序不能颠倒, ...

  8. ogre3d环境配置 SDK安装配置及简单事例教程

    ogre3d环境配置 SDK安装配置及简单事例教程 http://www.cr173.com/html/22594_1.html ogre3d环境配置 SDK安装配置及简单事例教程 http://ww ...

  9. C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志

    C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...

随机推荐

  1. D3js怎么获得SVG及其子元素在屏幕中的坐标

    var clientRects = svg.select("image").node().getBoundingClientRect(); var coordinates = [ ...

  2. D - A Game with Traps-- codeforces 1260D A

    题目大意: 一共有m个士兵,k个陷阱,时间为t,一个首领,这个首领需要在t时间内尽可能多的将士兵带到boos的面前, 第二行是每个士兵的灵敏度. 紧接着是k个陷阱,每个陷阱有l,,r,,d组成,l代表 ...

  3. D. Points in rectangle

    D. Points in rectangle 单点时限: 2.0 sec 内存限制: 512 MB 在二维平面中有一个矩形,它的四个坐标点分别为(0,a),(a,0),(n,n−a),(n−a,n). ...

  4. 带权值的图 BFS

    用bfs遍历最图求最短路径时通常借用优先队列即优先考虑最大的或者最小的权值 方法1 优先队列:(内置函数,优先考虑较小的权值) #include<iostream> #include< ...

  5. C++ 11 +,开坑。

    最近换新工作了.工作中需要用到高端的c++11的一些操作,至于我后面又plus一下还是因为可能是c++14或者17中提供的一些操作.反正都是c++11以及之后的一些特性. 首先,今天看一下关于函数模板 ...

  6. testNG 断言

    testNG提供一个Assert类,来判断输出值是否与预期值一致,Assert常用的方法有: Assert.assertEquals():此方法可以有两个参数值,也可以有3个参数值,参数的顺序是 ac ...

  7. jmeter DB2数据库连接与操作

    1.需要把数据库连接jar包拷贝到 jmeter lib目录下 先创建一个数据库连接配置元件 2.添加jdbc请求(我用的后置处理器) 3.可以通过beanshell 对结果集进行操作 beanshe ...

  8. Spring Cloud Gateway+Nacos,yml+properties两种配置文件方式搭建网关服务

    写在前面 网关的作用不在此赘述,举个最常用的例子,我们搭建了微服务,前端调用各服务接口时,由于各服务接口不一样,如果让前端同事分别调用,前端同事会疯的.而网关就可以解决这个问题,网关屏蔽了各业务服务的 ...

  9. 推荐web前端框架bootstrap

    bootstrap是基于Jquery而开发的一个前端框架. 全中文的学习网站:http://www.runoob.com/bootstrap/bootstrap-tutorial.html 实际上就是 ...

  10. 微服务通信方式——gRPC

    微服务设计的原则是单一职责.轻量级通信.服务粒度适当,而说到服务通信,我们熟知的有MQ通信,还有REST.Dubbo和Thrift等,这次我来说说gRPC, 谷歌开发的一种数据交换格式,说不定哪天就需 ...