ZH奶酪:自然语言处理工具LTP语言云调用方法
前言
LTP语言云平台
不支持离线调用;
支持分词、词性标注、命名实体识别、依存句法分析、语义角色标注;
不支持自定义词表,但是你可以先用其他支持自定义分词的工具(例如中科院的NLPIR)把文本进行分词,再让ltp帮你标注
支持C#、Go、Java、JavaScript、Nodejs、PHP、Python、R、Ruby等语言调用;
还有一些错误响应、频率限制、重要说明(这几个我至今也没用到);
正文
官方网址:http://www.ltp-cloud.com/
使用文档:http://www.ltp-cloud.com/document/
在线演示:http://www.ltp-cloud.com/demo/
各种语言调用实例可以到Github上下载:https://github.com/HIT-SCIR/ltp-cloud-api-tutorial
例如Python版本的:https://github.com/HIT-SCIR/ltp-cloud-api-tutorial/tree/master/Python
Step1:注册
在这个网址申请一个API key,稍后会用到;
Step2:一个简单的例子(Python版)
(1)复制代码:从Github上复制一段代码(取决于你使用的语言和所需的功能)
(2)修改代码:
<1>把 api_key = "YourApiKey" 中的 "YourApiKey" 修改成你Step1申请的API Key;
<2>把 text = "我爱北京天安门" 修改成你要处理的文本;
<3>根据需求设置不同的参数(其实只需要api_key,text,pattern,format四个参数就够了,仔细看下pattern):

# -*- coding: utf-8 -*-
#!/usr/bin/env python # This example shows how to use Python to access the LTP API to perform full
# stack Chinese text analysis including word segmentation, POS tagging, dep-
# endency parsing, name entity recognization and semantic role labeling and
# get the result in specified format. import urllib2, urllib
import sys if __name__ == '__main__':
if len(sys.argv) < 2 or sys.argv[1] not in ["xml", "json", "conll"]:
print >> sys.stderr, "usage: %s [xml/json/conll]" % sys.argv[0]
sys.exit(1) uri_base = "http://ltpapi.voicecloud.cn/analysis/?"
api_key = "YourApiKey"
text = "我爱北京天安门"
# Note that if your text contain special characters such as linefeed or '&',
# you need to use urlencode to encode your data
text = urllib.quote(text)
format = sys.argv[1]
pattern = "all" url = (uri_base
+ "api_key=" + api_key + "&"
+ "text=" + text + "&"
+ "format=" + format + "&"
+ "pattern=" + "all") try:
response = urllib2.urlopen(url)
content = response.read().strip()
print content
except urllib2.HTTPError, e:
print >> sys.stderr, e.reason
Step3:运行
如果要批量处理txt或者xml文件,需要自己写一段批量处理的代码,下边是我之前项目中用到的一段批量处理某一目录下txt文件代码(就是加了一层循环和设置了一个输出):
# -*- coding: utf-8 -*-
#!/usr/bin/env python # This example shows how to use Python to access the LTP API to perform full
# stack Chinese text analysis including word segmentation, POS tagging, dep-
# endency parsing, name entity recognization and semantic role labeling and
# get the result in specified format. import urllib2, urllib
import sys if __name__ == '__main__':
uri_base = "http://ltpapi.voicecloud.cn/analysis/?"
api_key = "7132G4z1HE3S********DSxtNcmA1jScSE5XumAI" f = open("E:\\PyProj\\Others\\rite_sentence.txt")
fw = open("E:\\PyProj\\Others\\rite_pos.txt",'w') line = f.readline()
while(line):
text = line
# Note that if your text contain special characters such as linefeed or '&',
# you need to use urlencode to encode your data
text = urllib.quote(text)
format = "plain"
pattern = "pos" url = (uri_base
+ "api_key=" + api_key + "&"
+ "text=" + text + "&"
+ "format=" + format + "&"
+ "pattern=" + pattern) try:
response = urllib2.urlopen(url)
content = response.read().strip()
print content
fw.write(line+content+'\n')
except urllib2.HTTPError, e:
print >> sys.stderr, e.reason
line = f.readline()
fw.close()
f.close()
ZH奶酪:自然语言处理工具LTP语言云调用方法的更多相关文章
- python3使用ltp语言云
text="我爱自然语言处理." text=str(text) #text=urllib.quote(text) text=urllib.parse.quote(text) def ...
- ZH奶酪:Python中zip函数的使用方法
定义:zip([iterable, …]) zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些 tuples组成 ...
- ZH奶酪:JavaScript清空数组的三种方法
参考链接:http://snandy.iteye.com/blog/893955 方式1,length赋值为0 目前 Prototype中数组的 clear 方法和mootools库中数组的 empt ...
- 哈工大LTP语言分析:分词、词性标注、句法分析等
1. LTP介绍和安装 LTP语言云官网 在线演示 | 语言云(语言技术平台云 LTP-Cloud) 安装LTP的python接口包 $ sudo pip install pyltp 模型文件下载 ...
- ZH奶酪:哈工大LTP云平台标记含义及性能
从官网搬过来的 囧rz 哈工大讯飞语言云 由哈工大 和科大讯飞 联合研发的中文自然语言处理云服务平台.结合了哈工大“语言技术平台——LTP” 高效.精准的自然语言处理核心技术和讯飞公司在全国性大规模云 ...
- Python自然语言处理工具小结
Python自然语言处理工具小结 作者:白宁超 2016年11月21日21:45:26 目录 [Python NLP]干货!详述Python NLTK下如何使用stanford NLP工具包(1) [ ...
- Python中调用自然语言处理工具HanLP手记
手记实用系列文章: 1 结巴分词和自然语言处理HanLP处理手记 2 Python中文语料批量预处理手记 3 自然语言处理手记 4 Python中调用自然语言处理工具HanLP手记 5 Python中 ...
- Python 的十个自然语言处理工具
原文 先mark,后续尝试. 1.NLTK NLTK 在用 Python 处理自然语言的工具中处于领先的地位.它提供了 WordNet 这种方便处理词汇资源的借口,还有分类.分词.除茎.标注.语法分析 ...
- 【HanLP】HanLP中文自然语言处理工具实例演练
HanLP中文自然语言处理工具实例演练 作者:白宁超 2016年11月25日13:45:13 摘要:HanLP是hankcs个人完成一系列模型与算法组成的Java工具包,目标是普及自然语言处理在生产环 ...
随机推荐
- 程序员用HTML5给女朋友制作的3D相册
程序员给女朋友用HTML5制作的3D相册,使用鼠标拖拽,能看到3D旋转效果,点击相片,相片能放大,移近.程序员发挥自己的专长,这是那些不懂编程的人望尘莫及的.本相册使用了HTML5的画布技术,需要谷歌 ...
- mvc中form表单提交的几种形式
第一种方式:submit 按钮 提交 <form action="MyDemand" method="post"> <span>关键字: ...
- Android开发7:简单的数据存储(使用SharedPreferences)和文件操作
前言 啦啦啦~大家好,又见面啦~ 本篇博文讲和大家一起完成一个需要注册.登录的备忘录的,一起学习 SharedPreferences 的基本使用,学习 Android 中常见的文件操作方法,复习 An ...
- Autodesk正在招聘Civil、Infraworks金牌支持工程师(Premium Support Specialist)
Civil Infraworks金牌支持工程师,也不知道中文这么翻对不对,反正很牛的,地点优选上海,不过其他地区也没问题啊,感兴趣的,赶紧扔简历过来,我当你内线,帮你内推 :) Autodesk是全球 ...
- dede:field name='imgurls'不能二次使用的解决办法
{dede:field name='imgurls' alt='图片输出区'}图片链接 [field:linkurl/]图片地址 [field:imgsrc/]{/dede:field} 这个标签不 ...
- IOS开发基础知识--碎片21
1:[UIScreen mainScreen].scale知识点 当屏幕分别为640x940时[[UIScreen mainScreen] scale]=2.0 当屏幕分别为320x480时[[UIS ...
- Android layout_weight理解
layout_weight属性只能用于LinearLayout布局,不能用于RelativeLayout等其他布局: layout_weight属性如果不设定,默认值为0: layout_weight ...
- Oracle创建表空间、用户、授权
在创建好数据实例(数据库)好后的基础上,后续做的事情如下: ---创建表空间 create tablespace LIS2011DATA logging datafile 'd:\oracle\pro ...
- ORACLE的SPFILE与PFILE
ORACLE中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件,可以分为两种类型.它们是在数据库实例启动时候加载的,决定了数据库的物理结构.内存.数据库的限制及系统大量的默认值.数据库的各种 ...
- 把Tomcat注册为windows服务
配置环境变量 JAVA_HOME=D:\java CLASSPATH=.;%JAVA_HOME%\lib; PATH=%JAVA_HOME%\bin; 提示:一般jre默认在jdk目录下%JAVA_H ...