[Django]-How to decode url to path in python, django

32👍

Use urllib.unquote to decode %-encoded string:

>>> import urllib
>>> url = u'/static/media/uploads/gallery/Marrakech%2C%20Morocco_be3Ij2N.jpg'
>>> urllib.unquote(url)
u'/static/media/uploads/gallery/Marrakech, Morocco_be3Ij2N.jpg'

Using urllib.quote or urllib.quote_plus, you can get back:

>>> urllib.quote(u'/static/media/uploads/gallery/Marrakech, Morocco_be3Ij2N.jpg')
'/static/media/uploads/gallery/Marrakech%2C%20Morocco_be3Ij2N.jpg'

16👍

If you are using Python3 you can write

urllib.parse.unquote(url)
👤dtar

1👍

with python 3.9 and django 3.2 :

Solution 1 :

import urllib
urllib.parse.unquote(url)

Solution 2 :

from django.utils.encoding import uri_to_iri
uri_to_iri(url)

Leave a comment