What are the URL parameters? (element at position #3 in urlparse result)

Question:

I’ve taken a look to urlparse.urlparse method documentation and I’m a little bit confused about what is the parameters part (not to be confused with the more familiar query part, that is what goes after the question mark and before the fragment part).

Wikipedia entry on URL’s structure doesn’t say anything about that, so could please anybody elaborate a little bit on this and possibly give some examples?

Asked By: fortran

||

Answers:

fascinating, this is the first time I’ve encounter them, found this
http://doriantaylor.com/policy/http-url-path-parameter-syntax I also found this
https://www.rfc-editor.org/rfc/rfc3986#section-3.3 (last paragraph before query) and this
http://www.jtmelton.com/2011/02/02/beware-the-http-path-parameter/

their rarely used, I think their meant to attach certain properties to paths .. maybe even control which version of segment you want to use, but this is just a hunch …
either way thank you, for bringing it up.

Answered By: Samy Vilar

Wow… I was not aware of that, see example:

>>> urlparse.urlparse("http://some.page.pl/nothing.py;someparam=some;otherparam=other?query1=val1&query2=val2#frag")
ParseResult(scheme='http', netloc='some.page.pl', path='/nothing.py', params='someparam=some;otherparam=other', query='query1=val1&query2=val2', fragment='frag')

And help(urlparse.urlparse):

Help on function urlparse in module urlparse:

urlparse(url, scheme='', allow_fragments=True)
    Parse a URL into 6 components:
    <scheme>://<netloc>/<path>;<params>?<query>#<fragment>
    Return a 6-tuple: (scheme, netloc, path, params, query, fragment).
    Note that we don't break the components up in smaller bits
    (e.g. netloc is a single string) and we don't expand % escapes.
Answered By: ddzialak