Skip to main content

Parse url and get all the different parts out of it

Project description

Python URL Parser

PyPI - Format PyPI - Status Downloads PyPI - Python Version

A nice package to help you parse all types of URL's in vanilla python and return the parsed URL in groups.

To not brake the API parse_url (returns a dict) still works and we made get_url to get the url parts as as object instead.

In version 2.1 we also included get_basic_url a small yet neat function to get a the main url back from a string

Installation

pip install url-parser

Usage

from url_parser import parse_url, get_url, get_base_url


url = parse_url('https://open.prospecta.app/my_user_login?user=url-parser&password=H3ll0') # returns url sections as a dict  
url_object = get_url('https://open.prospecta.app/my_user_login?user=url-parser&password=H3ll0') # Does the same, bur returns a object  
basic_url = get_base_url('https://open.prospecta.app/my_user_login?user=url-parser&password=H3ll0') # Returns just the main url  

print(url['domain']) # Outputs -> prospecta  
print(url_object.domain) # Outputs -> prospecta  
print(basic_url) # Outputs -> https://open.prospecta.app  

Keywords get_url and parse_url

When using the parse_url and get_url function, you get a dict (parse_url) or object (get_url) back with different parts of the URL.

The different parts can be accessed by keywords:
For parse_url use: result['top_domain]
For get_url use: result.top_domain

Here is a list of all the available keywords:

Keyword Desription Value when not present in URL
protocol The protocol, e.g. https or ftp None
www Returns www if www is used in the URL None
sub_domain The sub domain, e.g. my.subdomain in my.subdomain.example.com. Note that the sub domain also includes www. None
domain The domain, e.g. example in example.com Is always present
top_domain The domain, e.g. com in example.com Is always present
dir The directory, e.g. /my/directory/ in example.com/my/directory/ None
file The file, e.g. my_file.js in example.com/home/my_file.js None
path The full path, e.g. /home/my_file.js in example.com/home/my_file.js None
fragment The URL fragment, e.g. my_link in example.com#my_link None
query The URL query, e.g. my_parameter=1&foo=bar in example.com?my_parameter=1&foo=bar None

Testing

Use the following command to run tests.

python -m unittest url_parser.tests.test_url_parser

Changelog:

See CHANGELOG.md

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

url_parser-3.0.3.tar.gz (78.2 kB view details)

Uploaded Source

Built Distribution

url_parser-3.0.3-py3-none-any.whl (77.9 kB view details)

Uploaded Python 3

File details

Details for the file url_parser-3.0.3.tar.gz.

File metadata

  • Download URL: url_parser-3.0.3.tar.gz
  • Upload date:
  • Size: 78.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for url_parser-3.0.3.tar.gz
Algorithm Hash digest
SHA256 402ffca6459e272fe91985a7d5f143731cb80236a3ff59322c0aa4cb8b97b0d2
MD5 f029e81cac25d60913ff89e3fb51cbb8
BLAKE2b-256 7f96e75d719350fbbbba3fbc7b85f6d960c06367f7201a256bab7f0b4fa966bc

See more details on using hashes here.

File details

Details for the file url_parser-3.0.3-py3-none-any.whl.

File metadata

  • Download URL: url_parser-3.0.3-py3-none-any.whl
  • Upload date:
  • Size: 77.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for url_parser-3.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0eaec4f935297b72ffffc2fe2baabd4f6a469189b7b56446e7243b0bc371a963
MD5 8d72f3fda857349150eafe88afe13711
BLAKE2b-256 7d3fbdc0f4b789f7f9d893bca5bfb80579c4d4e80c19f28d39e4a8fbeb9344a1

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