Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

urilibplus

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

urilibplus

A Python module providing advanced tools for URI manipulation and validation. Simplifies handling and parsing of URIs, with a focus on robustness and ease of use.

  • 1.0.0.0
  • PyPI
  • Socket score

Maintainers
1

urilibplus

A Python Module for URI Manipulation. Inspired by pathlib, but for URIs.

urilibplus is a Python module designed to simplify the interaction and manipulation of URIs. It provides the URI class, which encapsulates URI operations into a consistent and user-friendly interface. With this module, you can easily handle URIs, including tasks such as encoding, validation, and manipulation.

Documentation

Setup

This module can be installed using:

pip install urilibplus

Usage

This module is intended to be used only as a module, and can be imported after installing using the traditional process:

from urilibplus import URI

Creating a URI Object

uri = URI("http://user:pass@host:1234/path?query#fragment")
print(uri.scheme)  # outputs "http"
print(uri.authority)  # outputs "user:pass@host:1234"

Encoding and Decoding URIs

encoded_uri = uri.encode() #same as str(uri)
print(encoded_uri) # outputs "http://user:pass@host:1234/path?query#fragment"

decoded_uri = URI(encoded_uri)
print(decoded_uri) # outputs "http://user:pass@host:port/path?query#fragment"

print(uri.encode(quote = True)) #outputs "http%3A%2F%2Fuser%3Apass%40host%3A1234%2Fpath%3Fquery%23fragment"

Path Manipulation

Also see the docs for the URIPath object, an object for URIs that works exactly like a pathlib path. Every URI object makes use of a URIPath object.

uri.pathappend("subpath", "suberpath")
print(uri.encode())  # outputs "http://user:pass@host:1234/path/subpath/suberpath?query#fragment"

And More

There are a handfull of other ease of use features that this module provides, feel free to reference the documentation for more information.

Licence

This is licensed under the Mozilla Public License 2.0 (MPL 2.0) Licence. See the Licence file in this repository for more information.

Contribute

Contributions are always welcome! Use the github repository to report issues and contribute to this project.

Credits

While not required, feel free to credit "Markus Hammer" (or just "Markus") if you find this code or script useful for whatever you may be doing with it.

Security Policy

While the python source code will be actively maintained, any binary files (if at all provided) are in no way supported. These are provided as a courtesy and are not intended to be the main usage of this software. Please keep this in mind when choosing how you wish to use this software.

Supported Versions

VersionSupported
1.0.0.0 >=
1.0.0.0 <

Reporting a Vulnerability

Please report any issues to the email 107761433+MarkusHammer(THEN THE @ SYMBOL HERE)users.noreply.github.com

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc