Skip to main content

Better MIME types in Python.

Project description

mimelib 🙊

Build Status Coverage Status Maintainability

A MIME type is a label used to identify a type of data. It is used so software can know how to handle the data. It serves the same purpose on the Internet that file extensions do on Microsoft Windows. — Quentin

mimelib aims at working with MIME types easier in Python. The standard library comes with the mimetypes module. This library builds on top of it and adds more niceties to it, so you're generally happier when working with MIME types today.

>>> import mimelib
>>> mimelib.mimetype('application/json').is_text
True
>>> mimelib.url('https://example.com/avatar.jpg').is_image
True
>>> mimelib.url('pianoman.mp3').file_type
media

Installation

To install mimelib, use pipenv (or pip):

$ pipenv install mimelib

Usage

mimelib is intended to be used alongside the mimetypes standard library module, and builds on top of it under the hood. So, if you are adding additional MIME types to be recognized, mimelib will work just as fine.

Initialization

Either a valid MIME type string, or a URL or path can be used to work with mimelib.

>>> m1 = mimelib.mimetype("application/json")  # pass a valid MIME type
>>> m2 = mimelib.url("foo/bar/dataset.csv")  # or pass a path / url

Both these methods return a MIME object, the various useful properties of which are listed below.

Getting the file type

The following file types are reported: text, image, media and binary.

>>> mimelib.mimetype("application/ecmascript").file_type
text
>>> mimelib.mimetype("video/mpeg").file_type
media
>>> mimelib.url("archive.rar").file_type
binary

The Mime object also has the following properties for conveniently checking specific file types:

  • is_text
  • is_image
  • is_media
  • is_binary

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

mimelib-0.1.1.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

mimelib-0.1.1-py2.py3-none-any.whl (4.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file mimelib-0.1.1.tar.gz.

File metadata

  • Download URL: mimelib-0.1.1.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for mimelib-0.1.1.tar.gz
Algorithm Hash digest
SHA256 9b36a5337ff7a8f31e5d5fbb8da17cc1debe299297df002cdfe12f5ae5e0f468
MD5 6f28b0ed459cdc26b7dda9933efc9dec
BLAKE2b-256 777fda82188fb6d0e279734ca5185d1b509c166ae8d6f8b825ea325615ca5eb5

See more details on using hashes here.

File details

Details for the file mimelib-0.1.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for mimelib-0.1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 70607238b57b1411d5bfc68661885f81ac00127d22bdaf71a1c857005693934b
MD5 d31a1205a292962cf10212e9891898e7
BLAKE2b-256 b1a96b2ca090da519f1b22831e9f3fa3bb9634c3fdcb304323e01134feddb58a

See more details on using hashes here.

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