Skip to content
Python library for MIME type parsing, normalisation and grouping.
Python Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
contrib
pantomime
tests
.bumpversion.cfg
.gitignore
.travis.yml
LICENSE
MANIFEST.in
Makefile
README.md
setup.cfg
setup.py

README.md

pantomime

Build Status

pantomime is a small library that handles the parsing and normalisation of internet MIME types in Python. This can be useful to normalise invalid, or misformatted MIME types emitted by remote web servers.

Usage

The simplest use is to normalise a MIME type:

from pantomime import normalize_mimetype

assert normalize_mimetype('TEXT/PLAIN') == 'text/plain'
assert normalize_mimetype('plain/text') == 'text/plain'
assert normalize_mimetype(None) == 'application/octet-stream'
assert normalize_mimetype('') == 'application/octet-stream'

Internally, pantomime uses a MIMEType object to handle parsing. It can be used to access more specific information, like human readable labels:

from pantomime import parse_mimetype

parsed = parse_mimetype('text/plain')
assert parsed.family == 'text'
assert parsed.subtype == 'plain'
assert parsed.label == 'Plain text'

Open issues

  • Internationalisation, i.e. make the human-readable labels available in multiple languages.
  • Expand replacements for specific MIME types.

License

Licensed under MIT terms, see the LICENSE file included in this repository.

You can’t perform that action at this time.