zoukankan      html  css  js  c++  java
  • python分享---HanLP库(切词、关键词提取、自动摘要、短语提取)

    Hanlp安装

    • pip安装 :pip install pyhanlp 

      (一般pypi不太稳定,较容易安装失败,之后一般安装python的第三方库都是有国内的镜像 ,一般的在 pip命令后加    -i http://pypi.douban.com/simple --trusted-host pypi.douban.com (豆瓣)就可以,还有好多,比如清华、阿里云等等)

      其实也可以在网上找已经编译好的“轮子”进行安装(由于没有用到,大家自行研究)

    • 两点说明
      • 一般安装失败的话,可能是缺少jpype1这个Python包,就需要安装Anaconda,安装完成后直接pip就好了
      • 一般安装后不能直接使用,还要下载类似数据字典的文件(一般在首次使用的时候会自动安装,会提示下载链接,安装路径;本人建议根据链接用下载器下载后放到安装路径)

    Hanlp的使用

    # 测试文本
    
    s = "华为创立于1987年,是全球领先的ICT(信息与通信)基础设施和智能终端提供商,我们致力于把数字世界带入每个人、" 
        "每个家庭、每个组织,构建万物互联的智能世界。目前华为有19.4万员工,业务遍及170多个国家和地区,服务30多亿人口。" 
        "我们在通信网络、IT、智能终端和云服务等领域为客户提供有竞争力、安全可信赖的产品、解决方案与服务,与生态伙伴" 
        "开放合作,持续为客户创造价值,释放个人潜能,丰富家庭生活,激发组织创新。华为坚持围绕客户需求持续创新,加大基" 
        "础研究投入,厚积薄发,推动世界进步。"
    
    • 切词
    # 切词
    
    print(HanLP.segment(s))
    
    #结果
    
    [华为/nt, 创立/v, 于/p, 1987/m, 年/qt, ,/w, 是/vshi, 全球/n, 领先/vi, 的/ude1, ICT/nx, (/w, 信息/n, 与/cc, 通信/vn, )/w, 基础设施/gi, 和/cc, 智能终端/gi, 提供商/n, ,/w, 
    我们/rr, 致力于/v, 把/pba, 数字/n, 世界/n, 带入/v, 每个/mq, 人/n, 、/w, 每个/mq, 家庭/n, 、/w, 每个/mq, 组织/n, ,/w, 构建/v, 万物/n, 互联/vi, 的/ude1, 智能/n, 世界/n, 。/w,
    目前/t, 华为/nt, 有/vyou, 19.4/m, 万/m, 员工/n, ,/w, 业务/n, 遍及/v, 170/m, 多/a, 个/q, 国家/n, 和/cc, 地区/n, ,/w, 服务/vn, 30/m, 多/a, 亿/m, 人口/n, 。/w, 我们/rr, 在/p,
    通信/vn, 网络/n, 、/w, IT/nx, 、/w, 智能终端/gi, 和/cc, 云/vg, 服务/vn, 等/udeng, 领域/n, 为/p, 客户/n, 提供/v, 有/vyou, 竞争力/n, 、/w, 安全/an, 可信赖/nz, 的/ude1, 产品/n,
    、/w, 解决方案/gi, 与/cc, 服务/vn, ,/w, 与/cc, 生态/n, 伙伴/n, 开放/v, 合作/vn, ,/w, 持续/vd, 为/p, 客户/n, 创造/v, 价值/n, ,/w, 释放/v, 个人/n, 潜能/n, ,/w, 丰富/a, 家庭/n
    , 生活/vn, ,/w, 激发/v, 组织/n, 创新/vi, 。/w, 华为/nt, 坚持/v, 围绕/v, 客户/n, 需求/n, 持续/vd, 创新/vi, ,/w, 加大/v, 基础/n, 研究/vn, 投入/v, ,/w, 厚积薄发/vl, ,/w, 推动/v,
    世界/n, 进步/vn, 。/w]
    • 自定义字典
    # 自定义字典
    
    CustomDictionary.add("基础研究", "n")
    
    print(HanLP.segment(s))
    
    # 结果
    
    [华为/nt, 创立/v, 于/p, 1987/m, 年/qt, ,/w, 是/vshi, 全球/n, 领先/vi, 的/ude1, ICT/nx, (/w, 信息/n, 与/cc, 通信/vn, )/w, 基础设施/gi, 和/cc, 智能终端/gi, 提供商/n, ,/w, 
    我们/rr, 致力于/v, 把/pba, 数字/n, 世界/n, 带入/v, 每个/mq, 人/n, 、/w, 每个/mq, 家庭/n, 、/w, 每个/mq, 组织/n, ,/w, 构建/v, 万物/n, 互联/vi, 的/ude1, 智能/n, 世界/n, 。/w, 
    目前/t, 华为/nt, 有/vyou, 19.4/m, 万/m, 员工/n, ,/w, 业务/n, 遍及/v, 170/m, 多/a, 个/q, 国家/n, 和/cc, 地区/n, ,/w, 服务/vn, 30/m, 多/a, 亿/m, 人口/n, 。/w, 我们/rr, 在/p, 
    通信/vn, 网络/n, 、/w, IT/nx, 、/w, 智能终端/gi, 和/cc, 云/vg, 服务/vn, 等/udeng, 领域/n, 为/p, 客户/n, 提供/v, 有/vyou, 竞争力/n, 、/w, 安全/an, 可信赖/nz, 的/ude1, 产品/n, 
    、/w, 解决方案/gi, 与/cc, 服务/vn, ,/w, 与/cc, 生态/n, 伙伴/n, 开放/v, 合作/vn, ,/w, 持续/vd, 为/p, 客户/n, 创造/v, 价值/n, ,/w, 释放/v, 个人/n, 潜能/n, ,/w, 丰富/a, 家庭/n, 
    生活/vn, ,/w, 激发/v, 组织/n, 创新/vi, 。/w, 华为/nt, 坚持/v, 围绕/v, 客户/n, 需求/n, 持续/vd, 创新/vi, ,/w, 加大/v, 基础研究/n, 投入/v, ,/w, 厚积薄发/vl, ,/w, 推动/v, 世界/n,
     进步/vn, 。/w]
    • 关键词提取
    # 关键词提取
    
    print(HanLP.extractKeyword(s, 5))
    
    # 结果
    [服务, 客户, 世界, 华为, 通信]
    • 摘要提取
    # 摘要提取
    
    print(HanLP.extractSummary(s, 3))
    
    # 结果
    [华为坚持围绕客户需求持续创新, 我们致力于把数字世界带入每个人、每个家庭、每个组织, 我们在通信网络、IT、智能终端和云服务等领域为客户提供有竞争力、安全可信赖的产品、解决方案与服务]
    • 短语提取
    # 短语提取
    
    print(HanLP.extractPhrase(s, 5))
    
    # 结果
    
    [加大基础研究, 基础研究投入, 智能终端提供商, 万物互联, 可信赖产品]
    

      通过我的使用,给我的感觉:HanLp比jieba好用。本人分享,欢迎大家指教

  • 相关阅读:
    有趣的项目链接分享
    Nano Pi安装Opencv-python
    Opencv
    安装库的步骤
    EC20 AT指令
    最详细树莓派/NanoPi网线和电脑直接连接方法
    在Altium Designer中如何将一组器件合并为一个?
    Altium Designer如何快速查找PCB板上元件
    pip升级之后,不能使用
    利用opencv-python(cv2)查看设备连接摄像头的数量
  • 原文地址:https://www.cnblogs.com/KYin/p/12506202.html
Copyright © 2011-2022 走看看