vininfo
=======
https://github.com/idlesign/vininfo
|release| |lic| |coverage|
.. |release| image:: https://img.shields.io/pypi/v/vininfo.svg
:target: https://pypi.python.org/pypi/vininfo
.. |lic| image:: https://img.shields.io/pypi/l/vininfo.svg
:target: https://pypi.python.org/pypi/vininfo
.. |coverage| image:: https://img.shields.io/coveralls/idlesign/vininfo/master.svg
:target: https://coveralls.io/r/idlesign/vininfo
Description
-----------
*Extracts useful information from Vehicle Identification Number (VIN)*
* Can be used as a standalone console application (CLI).
* One can also use import it as any other package in your Python code.
* Gives basic and detailed info (is available) about VIN.
* Allows VIN checksum verification.
Additional info available for many vehicles from:
* AvtoVAZ
* Nissan
* Opel
* Renault
Requirements
------------
* Python 3.6+
* ``click`` package for CLI
Usage
-----
CLI
~~~
``click`` package is required for CLI. You can install ``vininfo`` with ``click`` using::
$ pip install vininfo[cli]
.. code-block:: bash
$ vininfo --help
; Print out VIN info:
$ vininfo show XTAGFK330JY144213
; Basic:
; Country: USSR/CIS
; Manufacturer: AvtoVAZ
; Region: Europe
; Years: 2018, 1988
;
; Details:
; Body: Station Wagon, 5-Door
; Engine: 21179
; Model: Vesta
; Plant: Izhevsk
; Serial: 144213
; Transmission: Manual Renault
; Verify checksum
$ vininfo check 1M8GDM9AXKP042788
; Checksum is valid
Python
~~~~~~
.. code-block:: python
from vininfo import Vin
vin = Vin('VF1LM1B0H36666155')
vin.country # France
vin.manufacturer # Renault
vin.region # Europe
vin.wmi # VF1
vin.vds # LM1B0H
vin.vis # 36666155
annotated = vin.annotate()
details = vin.details
vin.verify_checksum() # False
Vin('1M8GDM9AXKP042788').verify_checksum() # True
Development
-----------
One can add missing WMI(s) using instructions from ``dicts/wmi.py``:
``WMI`` dictionary, that maps WMI strings to manufacturers.
Those manufacturers may be represented by simple strings, or instances of ``Brand``
subclasses (see ``brands.py``).
If you know how to decode additional information (model, body, engine, etc.)
encoded in VIN, you may also want to create a so-called `details extractor`
for a brand.
Details extractors are ``VinDetails`` subclasses in most cases making use of
``Detail`` descriptors to represent additional information
(see ``details/nissan.py`` for example).
Raw data
{
"_id": null,
"home_page": "https://github.com/idlesign/vininfo",
"name": "vininfo",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "Igor `idle sign` Starikov",
"author_email": "idlesign@yandex.ru",
"download_url": "https://files.pythonhosted.org/packages/5b/66/45910f9cc66875ab14365e3330ea557f78716d77a9a4b12ec0c19e048b4a/vininfo-1.8.0.tar.gz",
"platform": null,
"description": "vininfo\n=======\nhttps://github.com/idlesign/vininfo\n\n\n|release| |lic| |coverage|\n\n.. |release| image:: https://img.shields.io/pypi/v/vininfo.svg\n :target: https://pypi.python.org/pypi/vininfo\n\n.. |lic| image:: https://img.shields.io/pypi/l/vininfo.svg\n :target: https://pypi.python.org/pypi/vininfo\n\n.. |coverage| image:: https://img.shields.io/coveralls/idlesign/vininfo/master.svg\n :target: https://coveralls.io/r/idlesign/vininfo\n\n\nDescription\n-----------\n\n*Extracts useful information from Vehicle Identification Number (VIN)*\n\n* Can be used as a standalone console application (CLI).\n* One can also use import it as any other package in your Python code.\n* Gives basic and detailed info (is available) about VIN.\n* Allows VIN checksum verification.\n\nAdditional info available for many vehicles from:\n\n* AvtoVAZ\n* Nissan\n* Opel\n* Renault\n\n\nRequirements\n------------\n\n* Python 3.6+\n* ``click`` package for CLI\n\n\nUsage\n-----\n\nCLI\n~~~\n\n``click`` package is required for CLI. You can install ``vininfo`` with ``click`` using::\n\n $ pip install vininfo[cli]\n\n\n.. code-block:: bash\n\n $ vininfo --help\n\n ; Print out VIN info:\n $ vininfo show XTAGFK330JY144213\n\n ; Basic:\n ; Country: USSR/CIS\n ; Manufacturer: AvtoVAZ\n ; Region: Europe\n ; Years: 2018, 1988\n ;\n ; Details:\n ; Body: Station Wagon, 5-Door\n ; Engine: 21179\n ; Model: Vesta\n ; Plant: Izhevsk\n ; Serial: 144213\n ; Transmission: Manual Renault\n\n ; Verify checksum\n $ vininfo check 1M8GDM9AXKP042788\n ; Checksum is valid\n\n\nPython\n~~~~~~\n\n.. code-block:: python\n\n from vininfo import Vin\n\n vin = Vin('VF1LM1B0H36666155')\n\n vin.country # France\n vin.manufacturer # Renault\n vin.region # Europe\n vin.wmi # VF1\n vin.vds # LM1B0H\n vin.vis # 36666155\n\n annotated = vin.annotate()\n details = vin.details\n\n vin.verify_checksum() # False\n Vin('1M8GDM9AXKP042788').verify_checksum() # True\n\n\nDevelopment\n-----------\n\nOne can add missing WMI(s) using instructions from ``dicts/wmi.py``:\n``WMI`` dictionary, that maps WMI strings to manufacturers.\n\nThose manufacturers may be represented by simple strings, or instances of ``Brand``\nsubclasses (see ``brands.py``).\n\nIf you know how to decode additional information (model, body, engine, etc.)\nencoded in VIN, you may also want to create a so-called `details extractor`\nfor a brand.\n\nDetails extractors are ``VinDetails`` subclasses in most cases making use of\n``Detail`` descriptors to represent additional information\n(see ``details/nissan.py`` for example).\n\n\n",
"bugtrack_url": null,
"license": "BSD 3-Clause License",
"summary": "Extracts useful information from Vehicle Identification Number (VIN)",
"version": "1.8.0",
"project_urls": {
"Homepage": "https://github.com/idlesign/vininfo"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5200052dad6cf9bfd8f21eb93a85d5975ba754c354a08de8dd1643bfc3154c36",
"md5": "6ed0f63aff214c3033b3318847579dda",
"sha256": "d52aaeac92a258cddf860eab4a73d70263b81b75fdeb897fd6e8fcbb57af251e"
},
"downloads": -1,
"filename": "vininfo-1.8.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6ed0f63aff214c3033b3318847579dda",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 20631,
"upload_time": "2024-01-30T13:45:56",
"upload_time_iso_8601": "2024-01-30T13:45:56.662584Z",
"url": "https://files.pythonhosted.org/packages/52/00/052dad6cf9bfd8f21eb93a85d5975ba754c354a08de8dd1643bfc3154c36/vininfo-1.8.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5b6645910f9cc66875ab14365e3330ea557f78716d77a9a4b12ec0c19e048b4a",
"md5": "2efc342ca2410102b5bfc08e2ba73235",
"sha256": "c79da073dffb3b132045dd9a42101b34093179bd7c377f3c107f46b923b67169"
},
"downloads": -1,
"filename": "vininfo-1.8.0.tar.gz",
"has_sig": false,
"md5_digest": "2efc342ca2410102b5bfc08e2ba73235",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 21239,
"upload_time": "2024-01-30T13:45:58",
"upload_time_iso_8601": "2024-01-30T13:45:58.669544Z",
"url": "https://files.pythonhosted.org/packages/5b/66/45910f9cc66875ab14365e3330ea557f78716d77a9a4b12ec0c19e048b4a/vininfo-1.8.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-30 13:45:58",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "idlesign",
"github_project": "vininfo",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"tox": true,
"lcname": "vininfo"
}