skillfed

lazr.uri

A self-contained, easily reusable library for parsing, manipulating, and generating URIs.

lazr-uri v4.0.0 367.4K downloads/30d#7,196 on PyPI
Copyleft license LGPL v3 Active released

What it is and what it does

lazr.uri is a standalone library for working with URIs—parsing them into components, modifying those components, and reconstructing or generating new URIs. It has no runtime dependencies, making it lightweight and easy to embed in other projects. The library supports modern Python versions from 3.8 through 3.14 and is marked as production-stable.

The package is useful when you need to programmatically extract parts of a URI (scheme, host, path, query parameters), build URIs from scratch, or manipulate existing ones. It handles the syntax and structure of URIs so you don't have to parse them manually or rely on string splitting. Since it carries no external dependencies, adding it to a project introduces minimal installation friction.

Use it for:

  • Parse and extract components (scheme, host, path, query) from URIs in web applications or APIs.
  • Generate or manipulate URIs programmatically when building URLs for HTTP requests or links.
  • Validate and normalize URI strings in data processing or web scraping workflows.
  • Handle URI encoding and decoding in tools that work with web standards or REST APIs.

Worth the install?

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

Parse, manipulate, and generate URIs with a self-contained library that handles URI syntax and structure without external dependencies.

Yes. The package is lightweight (no dependencies), actively maintained, production-stable, and solves a common problem with a self-contained implementation. The LGPL v3 copyleft license requires you to disclose modifications and use compatible licensing if you distribute derivatives, but poses no barrier to internal use. Install it if you need robust URI parsing and manipulation without external dependencies.

Install

lazr-uri on PyPI

pip

pip install lazr-uri

uv

uv add lazr-uri

poetry

poetry add lazr-uri

Installing lazr.uri

Before you install

Installs with no runtime dependencies and maintains active status with a recent release.

License in practice

Licensed under LGPL v3 (copyleft); you must disclose source modifications and make your code available under compatible terms if you distribute this package or derivatives.

Quickstart

pip install lazr.uri

from lazr.uri import URI

uri = URI('https://example.com/path?query=value')
print(uri.scheme, uri.host, uri.path)

Requires Python 3.8 or later.

Verify before relying

  • Whether the library implements RFC 3986 or another specific URI standard
  • Performance characteristics for large-scale URI parsing or generation
  • Specific URI schemes or edge cases the library handles or does not handle

Package facts

License LGPL v3 (copyleft)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance actively maintained — 13 days since the last release
First released
Downloads 367,440/month — #7,196 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: lazr_uri-4.0.0-py3-none-any.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)Operating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9

Tags

URI parsing and manipulationparse URIs in Pythongenerate URIsURI handling libraryURL and URI utilitiesRFC URI parsingURI validation and generation
uri-parsingweb-standards

More WWW/HTTP packages