Gr1N
Gr1N

Reputation: 1377

Parse query part from url

I want to parse query part from url, this is my code to do this:

>>> from urlparse import urlparse, parse_qs
>>> url = '/?param1&param2=2'
>>> parse_qs(urlparse(url).query)
>>> {'param2': ['23']}

This code looks good, but "parse_qs" method loses query parameters like "param1" or "param1=". Can I parse query part with stantard library and save all parameters?

Upvotes: 22

Views: 19389

Answers (1)

Jon Clements
Jon Clements

Reputation: 142216

You want:

from urlparse import parse_qs, urlparse

parse_qs(urlparse(url).query, keep_blank_values=True)
# {'param2': ['2'], 'param1': ['']}

Upvotes: 54

Related Questions