Skip to main content

Normalize a URL to a standard unicode encoding

Project description

urlnorm.py

Normalize a URL to a standard unicode representation

urlnorm normalizes a URL by:

  • lowercasing the scheme and hostname

  • converting the hostname to IDN format

  • taking out default port if present (e.g., http://www.foo.com:80/)

  • collapsing the path (./, ../, //, etc)

  • removing the last character in the hostname if it is ‘.’

  • unescaping any percent escape sequences (where possible)

  • upercase percent escape (ie: %3f => %3F)

  • converts spaces, and %20 to ‘+’

  • converts ip encoded as an integer to dotted quad notation

Installation

pip install -U urlnorm

or to install from source

pip install -e git://github.com/jehiah/urlnorm.git#egg=urlnorm

Examples

>>> import urlnorm
>>> urlnorm.norm("http://xn--q-bga.com./u/u/../%72/l/")
u'http://q\xe9.com/u/r/l/'

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

urlnorm-1.1.1.tar.gz (4.2 kB view details)

Uploaded Source

File details

Details for the file urlnorm-1.1.1.tar.gz.

File metadata

  • Download URL: urlnorm-1.1.1.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for urlnorm-1.1.1.tar.gz
Algorithm Hash digest
SHA256 b22bb5393b79372da6da8ef7d509f8b07f6901f92518ff6072eeadec5ec27d80
MD5 d580b2e132848c0e5d95cfe6dbcc354b
BLAKE2b-256 04d346269800191144f1c4dce4fa850372ce69aba49b810a7b7053932e717001

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