--- id: python-mimeparse version: "2.0.0" license: MIT license_treatment: permissive maintenance: active --- # python-mimeparse — A module provides basic functions for parsing mime-type names and matching them against a list of media-ranges. License: permissive · Maintenance: active · Downloads: 865.7K/mo ## What it is and what it does Python-MimeParse is a lightweight utility for parsing and matching MIME types in HTTP content negotiation. It implements the media-range matching logic from RFC 7231 Section 5.3.2, allowing applications to determine which content type best satisfies a client's Accept header. The package provides functions to parse MIME types into components, extract quality parameters, and select the highest-quality match from a list of candidates. It has no external runtime dependencies and supports Python 3.8 through 3.13 on both CPython and PyPy. The module is mature (first released in 2012) and actively maintained, making it a stable choice for any HTTP framework or API server that needs to negotiate content types with clients. Use it for: - REST API servers selecting response format (JSON vs XML vs HTML) based on client Accept headers - Web frameworks implementing HTTP content negotiation during request routing - Middleware that must parse and rank media-ranges to determine the best response encoding - Testing HTTP clients that need to verify correct Accept header handling - Proxy or gateway applications filtering or transforming responses by MIME type preference ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Parses and matches MIME types against media-ranges according to RFC 7231, determining quality scores for content negotiation in HTTP applications. Yes. This is a stable, dependency-free utility for a standard HTTP task. Install it if your application handles content negotiation or needs to parse media-ranges; the low friction and active maintenance make it a safe choice. Skip it only if your framework already provides this functionality built-in. ## Install pip install python-mimeparse uv add python-mimeparse poetry add python-mimeparse ## Installing python-mimeparse Before you install: Low friction: pure Python wheel with no runtime dependencies. Actively maintained with recent commits and broad Python version support from 3.8 through 3.13 on both CPython and PyPy. License in practice: MIT license permits unrestricted use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects. Quickstart: pip install python-mimeparse import mimeparse best = mimeparse.best_match(['application/json', 'text/html'], 'application/json, text/html;q=0.9') Verify before relying: - Whether the package is actively developed beyond maintenance mode or if it is in stable-only status - Real-world performance characteristics when matching against large lists of media-ranges ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 865.7K/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags mime type parsing, media range matching, http content negotiation, quality parameter matching, mime type comparison, rfc 7231 mime handling, best match mime type, http-content-negotiation, mime-type-handling [View on SkillFed](https://skillfed.io/packages/python-mimeparse) · [View on PyPI](https://pypi.org/project/python-mimeparse/)