Skip to main content

Shorten a uuid into a URL friendly format.

Project description

uuid_shortener

Build Status PyPI supported versions PyPI version

uuid_shortener is a library for shortening UUIDs into an alphanumerical format suitable for usage in URLs.

The alphanumerical format is Flicker base 58 encoding.

Installation

from Pypi:

pip install uuid-shortener-py

Module usage

The UuidShortener object can be created with/without a prefix.

Example 1: without prefix
from uuid_shortener import UuidShortener
from uuid import uuid4

if __name__ == "__main__":
    print('******** Without prefix')

    shortener = UuidShortener()
    uuid_4 = uuid4()

    short_uuid = shortener.shorten(uuid_4)
    unshortened_uuid = shortener.unshorten(short_uuid)

    print(f'Uuid to shorten: {uuid_4}')
    print(f'shortened uuid: {short_uuid}')
    print(f'unshortened uuid(original uuid): {shortener.unshorten(short_uuid)}')
Output 1:
******** Without prefix
Uuid to shorten: 177d1b53-77d5-42b2-8b8f-8d86579deb52
shortened uuid: 3Ueemi554rN46ioLFw3dZG
unshortened uuid(original uuid): 177d1b53-77d5-42b2-8b8f-8d86579deb52

Example 2: with prefix
from uuid_shortener import UuidShortener
from uuid import uuid4

if __name__ == "__main__":
    print('******** With prefix')

    shortener = UuidShortener('meow')
    uuid_4 = uuid4()

    short_uuid = shortener.shorten(uuid_4)
    unshortened_uuid = shortener.unshorten(short_uuid)

    print(f'Uuid to shorten: {uuid_4}')
    print(f'shortened uuid: {short_uuid}')
    print(f'unshortened uuid (original uuid): {shortener.unshorten(short_uuid)}')
Output 2:
******** With prefix
Uuid to shorten: 2bea23d4-2b96-485d-8788-0c606ab93319
shortened uuid: meow-6qwbaCZnHtxJsj4uJTKJSV
unshortened uuid (original uuid): 2bea23d4-2b96-485d-8788-0c606ab93319
As an easy, one-way generator
from uuid_shortener import ShortUuidGenerator
from uuid import uuid4

if __name__ == "__main__":
    print('******** Generator')

    uuid_gen = ShortUuidGenerator(prefix='meow', uuid=uuid4)

    print('Shortened uuid 1: {}'.format( uuid_gen() ))
    print('Shortened uuid 2: {}'.format( uuid_gen() ))
Output 3:
******** Generator
Shortened uuid 1: meow-9ubC52uXU1MM9PcrUMaNNc
Shortened uuid 2: meow-wqTnxvHfWzrPvREcVi5RAf

License

MIT

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

uuid-shortener-py-1.1.0.tar.gz (4.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