que estoy tratando de urlencode un diccionario en Python con urllib.urlencode. El problema es que tengo que codificar una matriz.urlencode una matriz de valores
El resultado debe ser:
criterias%5B%5D=member&criterias%5B%5D=issue
#unquoted: criterias[]=member&criterias[]=issue
Pero el resultado que obtiene es:
criterias=%5B%27member%27%2C+%27issue%27%5D
#unquoted: criterias=['member',+'issue']
He intentado varias cosas, pero me parece que no puede obtener el resultado correcto.
import urllib
criterias = ['member', 'issue']
params = {
'criterias[]': criterias,
}
print urllib.urlencode(params)
Si uso cgi.parse_qs
para decodificar una cadena de consulta correcta, me sale esto como resultado:
{'criterias[]': ['member', 'issue']}
Pero si puedo codificar ese resultado, aparece un resultado erróneo espalda. ¿Hay alguna manera de producir el resultado esperado?
'cig.parse_qs' está en desuso (solo se conserva para compatibilidad con versiones anteriores), por lo que puede ser mejor utilizar' urlparse.parse_qs' – ChristopheD
Gracias por la sugerencia. Solo lo usé para comparar, así que no se usa realmente. – Ikke