• python中文分词器pymmseg的安装实录


    最近在用python做爬虫项目,感受到了python的强大,这期间要试试python的文本处理,要用到中文分词,故把我安装使用pymmseg的过程记录下来,作为备忘。

    pymmseg的项目下载地址是https://code.google.com/p/pymmseg-cpp/downloads/list

    选择下载源码包,自己编译,省的出现不兼容的情况。我选择的是pymmseg-cpp-src-1.0.2.tar.gz,下面是windows与linux平台的安装过程

    64位win7下pymmseg安装过程:

    1,解压,随便怎么解

    2,确保你有一个命令行可用的C++编译器和连接器,我装了vs2008,就用了vs带的编译器,在vs开始菜单里找到"Visual Studio Tools"/"Visual Studio 2008 x64 Win64 命令提示",这个命令行窗口启动时会自动配好编译器和连接器的环境变量,可以直接使用cl,link等命令了。(64位的机器要用64位的编译器编译,否则32位编译器编译生成的dll,在64位系统中加载会出问题。同理32位的选32的命令窗口)

    3,通过上面的命令行窗口进入解压后的目录,我这里是pymmseg-cpp,再进入子目录,mmseg-cpp,执行

    1 python build.py

    然后就是编译生成mmseg的过程,如下图:

    4,这时将pymmseg-cpp的整个目录copy到$PYTHON_HOME/Lib/site-packages目录下,并重命名为pymmseg

    5,测试是否可用:

    1 from pymmseg import mmseg
    2 mmseg.dict_load_defaults()
    3 text = '意思是说,tomcat默认设置能接收HTTP POST请求的最大为2M,如果你的POST请求数据大于2M'
    4 algor = mmseg.Algorithm(text)
    5 for tok in algor:
    6     print '%s [%d..%d]' % (tok.text, tok.start, tok.end)

    执行结果如下:

    意思 [0..6]
    是说 [6..12]
    tomcat [13..19]
    默认 [19..25]
    设置 [25..31]
    能 [31..34]
    接收 [34..40]
    HTTP [40..44]
    POST [45..49]
    请求 [49..55]
    的 [55..58]
    最大 [58..64]
    为 [64..67]
    2M [67..69]
    如果 [70..76]
    你的 [76..82]
    POST [82..86]
    请求 [86..92]
    数据 [92..98]
    大于 [98..104]
    2M [104..106]

    到此,说明pymmseg在win7 X64上完全可用了。

    centos6.4 64位下pymmseg安装过程:

    1,确保你安装了gcc,g++,没安gcc和g++的执行:

    yum -y install gcc
    yum -y install gcc-c++

    2,通windows上下载源码解压,进入目录,并进入子目录mmseg-cpp,执行:

    python build.py

    整个过程如下图:

    同样将编译好的pymmseg-cpp拷贝到python的lib库下site-packages中并重命名为pymmseg,我是编译安装的python2.75,lib库的地址在/usr/local/lib/python2.7/

    试验是否安装成功,如下图:

    到此,windows与linux上的pymmseg均已安装完成,可以使劲的用了。

  • 相关阅读:
    pytest之断言
    python之self
    python标准数据结构类型
    pytest之fixture
    python之继承和多态
    安卓UI自动化,pytest+UIautomator2+allure+jenkins
    airtest
    Python中单下划线开头的特性
    系统默认分配的共享内存太小,导致zabbix_server无法启动
    运行yum报错Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
  • 原文地址:https://www.cnblogs.com/wanghaomiao/p/3192452.html
Copyright © 2020-2023  润新知