Se você preferir não usar um analisador:
url = "http://www.example.org/default.html?ct=32&op=92&item=98"
url = url.split("?")[1]
dict = {x[0] : x[1] for x in [x.split("=") for x in url[1:].split("&") ]}
Portanto, não vou deletar o que está acima, mas definitivamente não é o que você deve usar.
Acho que li algumas das respostas e elas pareceram um pouco complicadas, caso você seja como eu, não use a minha solução.
Usa isto:
from urllib import parse
params = dict(parse.parse_qsl(parse.urlsplit(url).query))
e para Python 2.X
import urlparse as parse
params = dict(parse.parse_qsl(parse.urlsplit(url).query))
Eu sei que esta é a mesma resposta aceita, apenas em uma linha que pode ser copiada.
urllib.parse_qs
também retorna listas para os valores. Mencionei isso especificamente em minha resposta, por falar nisso, você pode querer usar emurllib.parse_qsl()
vez disso e depois da lista resultante,dict()
se quiser apenas valores únicos.