Skip to main content

Name parser and formatter (for politicians, individuals, and organizations)

Project description

This is the name parser and standardizer for the datacommons project. It now supports politician, individual and organization names.


Installation is easy:

pip install name-cleaver


Basic usage is the same for each type of name, just import the relevant NameCleaver class from one of:

  • PoliticianNameCleaver

  • IndividualNameCleaver

  • OrganizationNameCleaver


from name_cleaver import PoliticianNameCleaver smith = PoliticianNameCleaver(‘Smith, Robert J’).parse()

smith.first => “Robert” smith.middle => “J.” smith.last => “Smith”

print str(smith) => “Robert J. Smith”

Usage as above can usually be expected to return a Name object, but is not guaranteed to not throw an exception if NameCleaver is given unexpected input or otherwise can’t figure out what to do with a name. You can look for and handle Name Cleaver’s UnparseableNameException class. If you don’t want to deal with handling exceptions, NameCleaver has a safe mode:

smith = PoliticianNameCleaver(‘Smith, Robert J’).parse(safe=True)

In safe mode, if NameCleaver encounters an exception or doesn’t come up with a fully-formed name, it will return the original input string.

Project details

Download files

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

Source Distribution

name-cleaver-0.6.0.tar.gz (14.0 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page