Skip to main content

This is vin-parser package description

Project description


Library that provides functions to work with VIN strings.


vin-parser is available on PyPI and can be installed using pip.

$ pip install vin-parser


All the public functions are exported to the package namespace. We'll alias it as vp in the following examples.

>>> import vin_parser as vp

The functions check_no, seq_no, wmi, vds and vis return parts of the VIN string.

>>> vin = "1GYFK63878R248711"
>>> vp.check_no(vin)

Function check_no returns the VIN check digit, i.e. position 9 in the VIN string. It returns for all VINs, even for those that don't use the check digit schema.

>>> vp.wmi(vin)
>>> vp.vds(vin)

Lowercase VINs are accepted:

>>> vp.vis(vin.lower())

check_valid, is_valid and small_manuf are predicate functions, i.e. functions that return True or False. check_valid returns True if the VIN's check digit matches the computed value. is_valid returns True if the provided VIN is valid. Because the use of VIN check digit is not adopted worldwide, the check_valid test is not performed when verifing the validity of a VIN.

Functions continent, country, year and manuf parse the VIN and return the values. year returns a positive integer, while the others return a string with their name.

'United States'
>>> vp.year(vin)
>>> vp.manuf(vin)
'General Motors USA'

Function parse calls all the other functions and returns the results in a dict if the provided VIN is valid. Function online_parse queries the nhtsa api with the provided VIN. Empty values are removed from the response and the rest are returned in a python dict. No other transformations are performed on the keys or values. Note that, unlike parse, online_parse doesn't check if the VIN is valid before sending it to the remote server.

The CHARS constant is a sorted string with all the valid characters of a VIN: A to Z, 1 to 9 and 0, except for I, O and Q.

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

vin-parser-0.0.1.tar.gz (11.0 kB view hashes)

Uploaded source

Built Distribution

vin_parser-0.0.1-py3-none-any.whl (11.4 kB view hashes)

Uploaded py3

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