В Python не полностью распознается URL если в нем есть русские символы
У меня есть строка, которую я передаю CURL
upload_oth = f'curl -k -u login:pass -T {filename} "https://cloud.dit.mos.ru/remote.php/dav/files/DIT-VKS-LdapUser/Other/тест"'
Но если строка с русскими буквами, то она уже не распознается как полноценная ссылка
И запрос падает с ошибкой
Your browser sent an invalid request.

Как преобразовать сроку в полный URL и с русскими буквами
Ответы (1 шт):
Автор решения: Алексей С
→ Ссылка
Для корректной работы потребовалось кодировать URL. Использовал quote() функцию, предоставляемую urllib.parsepackage.quote()
from urllib.parse import unquote, quote
upload_oth = f'curl -k -u login:pass -T {quote(filename)} "https://cloud.dit.mos.ru/remote.php/dav/files/DIT-VKS-LdapUser/Other/{quote(filename)}
Вот эта статья помогла https://www.urlencoder.io/python/
