URL query parameters to dict python

Is there a way to parse a URL (with some python library) and return a python dictionary with the keys and values of a query parameters part of the URL?

For example:

    url = "http://www.example.org/default.html?ct=32&op=92&item=98"

expected return:

    {'ct':32, 'op':92, 'item':98}

Use the urllib.parse library:

    >>> from urllib import parse
    >>> url = "http://www.example.org/default.html?ct=32&op=92&item=98"
    >>> parse.urlsplit(url)
    SplitResult(scheme='http', netloc='www.example.org', path='/default.html', query='ct=32&op=92&item=98', fragment='')
    >>> parse.parse_qs(parse.urlsplit(url).query)
    {'item': ['98'], 'op': ['92'], 'ct': ['32']}
    >>> dict(parse.parse_qsl(parse.urlsplit(url).query))
    {'item': '98', 'op': '92', 'ct': '32'}

The urllib.parse.parse_qs() and urllib.parse.parse_qsl() methods parse out query strings, taking into account that keys can occur more than once and that order may matter.

If you are still on Python 2, urllib.parse was called urlparse.

From: stackoverflow.com/q/21584545