Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

A Python wrapper around the NLPIR/ICTCLAS Chinese segmentation software.

Project description

Build Status Latest Version

PyNLPIR is a Python wrapper around the NLPIR/ICTCLAS Chinese segmentation software.

About

Easily segment text using NLPIR, one of the most widely-regarded Chinese text analyzers:

import pynlpir
pynlpir.open()

s = '欢迎科研人员、技术工程师、企事业单位与个人参与NLPIR平台的建设工作。'
pynlpir.segment(s)

[('欢迎', 'verb'), ('科研', 'noun'), ('人员', 'noun'), ('、', 'punctuation mark'), ('技术', 'noun'), ('工程师', 'noun'), ('、', 'punctuation mark'), ('企事业', 'noun'), ('单位', 'noun'), ('与', 'conjunction'), ('个人', 'noun'), ('参与', 'verb'), ('NLPIR', 'noun'), ('平台', 'noun'), ('的', 'particle'), ('建设', 'verb'), ('工作', 'verb'), ('。', 'punctuation mark')]

Features

  • Helper functions for common use cases
  • English/Chinese part of speech mapping
  • Support for UTF-8, GBK, and BIG5 encoded strings (and unicode of course!)
  • Access to NLPIR’s C functions via ctypes
  • Includes a copy of NLPIR
  • Runs on Python 2.7 and 3
  • Supports macOS, Linux, and Windows

Getting Started

Change Log

0.6 (2019-08-20)

  • Adds 'raw' option to pos_names for pynlpir.segment().
  • Adds missing pos tags: “mg”, “g”, and “j”.
  • Fixes broken NLPIR project links in documentation.

0.5.2 (2017-03-24)

  • Fixes error opening PyNLPIR on Windows/Python 3. Fixes #63.

0.5.1 (2017-03-18)

  • Fixes error opening PyNLPIR on Windows/Python 2. Fixes #63.

0.5 (2017-03-11)

  • Adds license auto-updater.
  • Removes included license file.
  • Moves tests to separate directory.

0.4.6 (2016-08-12)

  • Updates NLPIR license.

0.4.5 (2016-07-18)

  • Updates NLPIR license.

0.4.4 (2016-04-09)

  • Updates NLPIR license.

0.4.3 (2016-03-13)

  • Updates NLPIR license.

0.4.2 (2016-02-16)

  • Updates NLPIR license.

0.4.1 (2016-01-22)

  • Updates NLPIR license.

0.4 (2015-12-21)

  • Updates NLPIR.
  • Adds OS X support.

0.3.3 (2015-10-21)

  • Fixes NLPIR freezing with certain inputs. Fixes #33.
  • Adds flake8 tests to tox and travis-ci.
  • Adds tests for Python 3.5 support.
  • Uses io.open() in setup.py. Fixes #34.

0.3.2 (2015-08-05)

  • Adds 2015-08-05 license file. Fixes #31.

0.3.1 (2015-07-12)

  • Fixes RST rendering error.

0.3 (2015-07-12)

  • Includes NLPIR version 20150702. Fixes #25.
  • Adds encoding error handling scheme options.
  • Adds new word identification functions and documentation. Fixes #26.
  • Makes ~pynlpir.get_key_words work with multiple NLPIR return value structures. Fixes #23.
  • Returns None when pos code not recognized. Fixes #20.
  • Updates outdated link in tutorial. Fixes #21.

0.2.2 (2015-01-02)

  • Fixes release problem with v0.2.1.

0.2.1 (2015-01-02)

  • Packages NLPIR version 20141230. Fixes #18.

0.2 (2014-12-18)

  • Packages NLPIR version 20140926. Restores pynlpir.get_key_words functionality. Fixes #11, #14, and #15.
  • Updates part of speech map for new NLPIR version. Fixes #17.
  • Fixes a typo in api.rst. Fixes #16.
  • Fixes a bug involving uppercase part of speech codes. Fixes #10.
  • Adds Python 3.4 test to tox and travis.
  • Notes Python 3.4 support in setup.py and CONTRIBUTING.rst.
  • Fixes the doubleslash unit test so that it works with the new NLPIR version.
  • Adds a missing comma. Fixes #8.
  • Fixes indentation in pynlpir.get_key_words.
  • Adds condition for empty key word result. Fixes #9.

0.1.3 (2014-06-12)

  • Fixes typo in docs. Fixes #4.
  • Adds license_code argument to pynlpir.open. Fixes #6.
  • Packages NLPIR version 20131219 and removes version 20140324. Fixes a NLPIR expired license issue. Fixes #5.
  • Fixes bug with double slashes in input. Fixes #7.

0.1.2 (2014-05-01)

  • Adds version information to __init__.py.
  • Adds Travis CI configuration information.
  • Reformats README.rst.
  • Adds documentation about contributing.
  • Fixes #2. Fixes segmenting text with whitespace.
  • Fixes #3. Fixes _encode()/_decode default encoding error.

0.1.1 (2014-04-07)

  • Fixes installation problem with package data.

0.1.0 (2014-04-07)

  • Initial release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for PyNLPIR, version 0.6.0
Filename, size File type Python version Upload date Hashes
Filename, size PyNLPIR-0.6.0-py2.py3-none-any.whl (13.1 MB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size PyNLPIR-0.6.0.tar.gz (13.1 MB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page