Шаг за шагом: Как раскодировать символы URL в Python

URL-адреса часто содержат специальные символы, такие как пробелы, амперсанды и другие знаки препинания, которые не могут быть переданы как есть. Вместо этого, они должны быть закодированы и отправлены на сервер в безопасном формате.

Однако, иногда может потребоваться раскодировать URL-адрес, чтобы отобразить его в читаемом виде. В этой статье мы рассмотрим, как раскодировать символы URL в Python.

Шаг 1: Импортировать библиотеку urllib.parse

Для раскодирования символов URL в Python мы будем использовать библиотеку urllib.parse. Для начала нужно импортировать эту библиотеку:

from urllib.parse import unquote

Шаг 2: Использовать функцию unquote() для раскодирования URL

Функция unquote() принимает закодированный URL-адрес в качестве входного параметра и возвращает раскодированный URL-адрес.

url_encoded = 'https%3A%2F%2Fwww.google.com%2Fsearch%3Fq%3Dpython%26oq%3Dpython%26aqs%3Dchrome.0.35i39l2j0l4j46j69i60.6309j0j7%26sourceid%3Dchrome%26ie%3DUTF-8'
url_decoded = unquote(url_encoded)
print(url_decoded)
# https://www.google.com/search?q=python&oq=python&aqs=chrome.0.35i39l2j0l4j46j69i60.6309j0j7&sourceid=chrome&ie=UTF-8

Вывод: https://www.google.com/search?q=python&oq=python&aqs=chrome.0.35i39l2j0l4j46j69i60.6309j0j7&sourceid=chrome&ie=UTF-8

Шаг 3: Обработка ошибок

Если входной параметр unquote() не является закодированным URL-адресом, то функция сгенерирует исключение. Чтобы избежать этой ситуации, следует использовать конструкцию try-except:

url_encoded = 'https%3A%2F%2Fwww.google.com%2Fsearch%3Fq%3Dpython%26oq%3Dpython%26aqs%3Dchrome.0.35i39l2j0l4j46j69i60.6309j0j7%26sourceid%3Dchrome%26ie%3DUTF-8'
try:
    url_decoded = unquote(url_encoded)
except:
    print('Invalid URL')
else:
    print(url_decoded)

Вывод: https://www.google.com/search?q=python&oq=python&aqs=chrome.0.35i39l2j0l4j46j69i60.6309j0j7&sourceid=chrome&ie=UTF-8

Заключение

В этой статье мы рассмотрели, как раскодировать символы URL в Python с помощью библиотеки urllib.parse. Используйте эти шаги, чтобы вставить безопасные URL-адреса в ваши приложения или для расшифровки существующих URL-адресов.

Смотри также: