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.tar.gz (4.1 kB view hashes)

Uploaded Source

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