skillfed

python-didl-lite

DIDL-Lite (Digital Item Declaration Language) tools for Python

python-didl-lite v1.5.0 156.7K downloads/30d#10,778 on PyPI7
Permissive license Apache-2.0 Active released

What it is and what it does

python-didl-lite provides tools to read and write DIDL-Lite XML, the standard format for declaring digital items in UPnP media systems. It wraps the XML parsing and serialization logic needed to work with UPnP ContentDirectory metadata, following the UPnP-av specifications. The package is a straightforward codec: it does not enforce type checking or perform automatic data coercion, leaving that responsibility to the caller.

Typical use is in UPnP media servers, clients, or tools that need to parse or generate DIDL-Lite metadata describing audio, video, or image items. The single runtime dependency is defusedxml, which handles the XML I/O. The package targets modern Python (3.10+) and has been actively maintained since its 2018 initial release.

Use it for:

  • Parse DIDL-Lite metadata from a UPnP ContentDirectory service response to extract item details
  • Generate DIDL-Lite XML documents to describe media items in a UPnP media server
  • Convert between DIDL-Lite and application-specific data structures in media management tools
  • Validate or inspect DIDL-Lite documents against UPnP-av specifications
  • Build UPnP client libraries that need to understand media item metadata

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Reads and writes DIDL-Lite XML documents, a standard format for declaring digital items in UPnP media systems.

Yes. The package solves a specific, well-defined problem (DIDL-Lite XML I/O) with low install friction, active maintenance, no known vulnerabilities, and a permissive license. Install it if you are building UPnP media tools or need to parse/generate DIDL-Lite metadata. Skip it if you do not work with UPnP systems.

Install

python-didl-lite on PyPI

pip

pip install python-didl-lite

uv

uv add python-didl-lite

poetry

poetry add python-didl-lite

Installing python-didl-lite

Before you install

Low friction: pure Python wheel with a single runtime dependency (defusedxml). Actively maintained with recent releases; last commit 2026-08-14. Supports current Python versions (3.10–3.14).

License in practice

Apache-2.0 permissive license allows commercial and private use with minimal restrictions.

Quickstart

pip install python-didl-lite

import python_didl_lite
# Parse or create DIDL-Lite XML documents
# See tests/ for usage examples

Requires Python 3.10 or later. Note: the package does not perform type checking; users must handle data type coercion between strings and other types.

Verify before relying

  • Whether the package handles all UPnP-av ContentDirectory v1 and v2 features completely
  • Performance characteristics when working with large DIDL-Lite documents
  • Whether defusedxml is used for security hardening against XML attacks

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 1 — defusedxml
Maintenance actively maintained — 223 days since the last release
Last repo commit
First released
Downloads 156,658/month — #10,778 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: python_didl_lite-1.5.0-py3-none-any.whl

Keywords: DIDL, DIDL-lite

Development Status :: 5 - Production/StableIntended Audience :: DevelopersProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

DIDL-Lite XML parsingUPnP media metadatadigital item declarationDIDL-Lite serializationUPnP content directoryXML media formatDIDL document handling
upnpxml-formatmedia-metadata

More Internet packages