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
Close
Hashes for python-datauri-whtsky-0.2.8.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 664c7e710cec2191bf6f4536aa03cefa96cdada7f0910506a16357c6f0c5f96e |
|
MD5 | 17d1056fdbcae210bcb2475edeb498ca |
|
BLAKE2b-256 | 2b35af2b7b94e3c86627c39ae8564b254f9e76ba7b3dd8621bc9394adf446023 |
Close
Hashes for python_datauri_whtsky-0.2.8-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7b5680b050fa2b338b7a634a085d4036cc5df13b0db19fd2362414c95a39701 |
|
MD5 | 3c57e7ef59c58802b08b3e013f11f7ee |
|
BLAKE2b-256 | b3162857ddb3990ae040ddbdac57afd0391776e256f5fb49b0622aa5ecf1daa7 |