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 (a string on Python 2). 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 (c.f. <http://unlicense.org/>).
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
python-datauri-0.2.1.tar.gz
(4.7 kB
view hashes)
Built Distribution
Close
Hashes for python_datauri-0.2.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9110f5f60495a7bcda5adb20b4b0722303c5bde8a320534f164d7918590f48a1 |
|
MD5 | 5136e04f6246a3f7d20865c16deb7049 |
|
BLAKE2b-256 | 070f39b47893e41c0bd4b9df64486cc68f67f2762086bdde8d574e51ffd1ca34 |