A li'l class for data URI manipulation in Python
Project description
Data URI manipulation made easy.
This isn’t very robust, and will reject a number of valid data URIs. However, it meets the most useful case: a mimetype, a charset, and the base64 flag.
Installation
$ pip install python-datauri
Parsing
>>> from datauri import DataURI
>>> uri = DataURI('data:text/plain;charset=utf-8;base64,VGhlIHF1aWNrIGJyb3duIGZveCBqdW1wZWQgb3ZlciB0aGUgbGF6eSBkb2cu')
>>> uri.mimetype
'text/plain'
>>> uri.charset
'utf-8'
>>> uri.is_base64
True
>>> uri.data
b'The quick brown fox jumped over the lazy dog.'
Note that DataURI.data will always return bytes, (which in Python 2 is the same as a string). Use DataURI.text to get the text type (str on Python 3.x, unicode on Python 2.x).
Creating from a string
>>> from datauri import DataURI
>>> made = DataURI.make('text/plain', charset='us-ascii', base64=True, data='This is a message.')
>>> made
DataURI('data:text/plain;charset=us-ascii;base64,VGhpcyBpcyBhIG1lc3NhZ2Uu')
>>> made.data
b'This is a message.'
Creating from a file
This is really just a convenience method.
>>> from datauri import DataURI
>>> png_uri = DataURI.from_file('somefile.png')
>>> png_uri.mimetype
'image/png'
>>> png_uri.data
b'\x89PNG\r\n...'
License
This code is released under the Unlicense.
Credits
This is a repackaging of this Gist originally written by Zachary Voase.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file python-datauri-whtsky-0.2.8.tar.gz
.
File metadata
- Download URL: python-datauri-whtsky-0.2.8.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.3 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 664c7e710cec2191bf6f4536aa03cefa96cdada7f0910506a16357c6f0c5f96e |
|
MD5 | 17d1056fdbcae210bcb2475edeb498ca |
|
BLAKE2b-256 | 2b35af2b7b94e3c86627c39ae8564b254f9e76ba7b3dd8621bc9394adf446023 |
File details
Details for the file python_datauri_whtsky-0.2.8-py2.py3-none-any.whl
.
File metadata
- Download URL: python_datauri_whtsky-0.2.8-py2.py3-none-any.whl
- Upload date:
- Size: 5.9 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.1.3 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7b5680b050fa2b338b7a634a085d4036cc5df13b0db19fd2362414c95a39701 |
|
MD5 | 3c57e7ef59c58802b08b3e013f11f7ee |
|
BLAKE2b-256 | b3162857ddb3990ae040ddbdac57afd0391776e256f5fb49b0622aa5ecf1daa7 |