如何高效的完成中文分词?
2019-10-09 18:09
1336 查看
在说分词之前,笔者先来介绍下何为分词:分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。英文中,单词之间是以空格作为自然分界符的,但是中文的分词就复杂多了,要涉及一些算法,对于初学者来说,还是有很多难度的。这里笔者只介绍一种最简单的方式,有兴趣的朋友可以看下,直接上代码: python实现方式
# -*- coding: utf-8 -*- # flake8: noqa __author__ = 'wukong' import urllib from urllib import urlencode #配置您申请的appKey和openId app_key="***" open_id="***" """ request_url 请求地址 params 请求参数 method 请求方法 """ def request_content(request_url,params,method): params = urlencode(params) if method and method.lower() =="get": f = urllib.urlopen("%s?%s" % (request_url, params)) else: f = urllib.urlopen(request_url, params) content = f.read() print content def main(): domain="http://api.xiaocongjisuan.com/" servlet="data/chinesekeyword/analysis" method="get" request_url=domain+servlet #字典 params ={} params["appKey"]=app_key params["openId"]=open_id #变动部分 params["content"]="我是一个中国人,你知道嘛" request_content(request_url,params,method) if __name__ == '__main__': main()
php实现方式
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <?php /** * @author * @copyright 2019 */ header("content-type:text/html;charset=utf-8"); //设置编码 //配置您申请的appKey和openId $app_key = "***"; $open_id = "***"; /** $url 请求地址 $params 请求参数 $ispost 请求方法 */ function http_curl($url,$params=false,$ispost=false){ $httpInfo = array(); $ch = curl_init(); curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 ); curl_setopt( $ch, CURLOPT_USERAGENT , "xiaocongjisuan"); curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 ); curl_setopt( $ch, CURLOPT_TIMEOUT , 60); curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true ); if( $ispost ) { curl_setopt( $ch , CURLOPT_POST , true ); curl_setopt( $ch , CURLOPT_POSTFIELDS , $params ); curl_setopt( $ch , CURLOPT_URL , $url ); } else { if($params){ curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params ); }else{ curl_setopt( $ch , CURLOPT_URL , $url); } } $response = curl_exec( $ch ); if ($response === FALSE) { //echo "cURL Error: " . curl_error($ch); return false; } $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE ); $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) ); curl_close( $ch ); return $response; } function main(){ global $app_key; global $open_id; $domain="http://api.xiaocongjisuan.com/"; $servlet="data/chinesekeyword/analysis"; $method="get"; $url=$domain."".$servlet; $params['appKey']=$app_key; $params['openId']=$open_id; //变动部分 $params["content"]="我是一个中国人,你知道嘛"; //编码转换 foreach ($params as $key=>$value) { $params[$key]=mb_convert_encoding($value, "UTF-8", "GBK"); } $paramstring = http_build_query($params); $content = http_curl($url,$paramstring,true); return $content; } echo main(); ?>
原理主要是调用接口,直接输入一串字符串,然后接口会自动把结果以json或者xml的形式返回,具体文档可以点我查看。这种实现方式很简单,省去了大量的开发时间,屏蔽了语言之间的差异性,值得推荐。
相关文章推荐
- ArcMap如何创建数据编辑模板,高效完成数据采集
- 如何高效完成产品生命周期管理
- 高效音频转文字在线转换如何完成
- 如何高效的完成项目管理
- 如何快速高效地完成一个Android项目?
- 敏捷开发下, 如何将需求分析,架构(软件)设计,开发与测试,一气呵成式的结合且高效的完成 ?
- 工作感悟系列-如何快速高效圆满的完成任务
- 如何使用Axure高效完成高保真原型
- 简谈《如何高效学习:1年完成麻省理工4年33门课程的整体性学习法》
- 如何监控一个Activity加载完毕(完成渲染)
- 动态加载JS过程中如何判断JS加载完成
- 如何使用代码清除IE的自动完成表单
- (原创)如何高效的进行WebService接口性能测试
- 一步步带你探究如何高效使用TensorFlow
- HOWTO:如何在InstallScript脚本中完成DLL, OCX的注册
- iOS程序完成后如何生成ipa进行真机测试
- 【资源分享】什么样的团队是高效的测试团队?如何领导出高效的测试团队?
- 如何高效学习
- Android 图片如何高效加载与缓存 (2) —— 增加图片处理接口