kolumbou
@kolumbou
python, html, c#

Как перевести quoted-printable в нормальный текст?

Всем доброго времени суток!

Имеется следующая проблема.

Есть словарь следующего вида с изначально пустыми значениями:

payload = {
    'jo': '',
    'ta':'',
    'bo':'', ... }


(И это должен быть обязательно словарь. Переводить во что бы то не было нельзя.)

Туда в ходе определенного цикла добавляются записи:

message = 'Я тут'
payload['ta'] = [messsage]


Далее программа, беря значения этого словаря отправляет их на апи сайта с целью разместить эти значения в определенном месте.
В итоге на сайте результат в виде, например "%D0%AF+%D1%82%D1%83%D1%82".
Насколько я понял - это именно quoted-printable.

И как с этим быть? Пробовал переводить message разными способами - но это как выглядело глупой затеей, так на практике этим и оказалось.
Идей нет. Может быть это проблема самого api?
Буду благодарен за любой совет.
  • Вопрос задан
  • 1564 просмотра
Решения вопроса 1
AtomKrieg
@AtomKrieg
Давай я поищу в Google за тебя
Нет никакой проблемы API. Вы серьезно никогда в жизни не копировали рускоязычные линки в другие программы?

https://www.design-sites.ru/utility/url-encoding.php
https://ru.wikipedia.org/wiki/URL#.D0.9A.D0.BE.D0....

from urllib.parse import urlencode
import quopri

# Туда
args = {'a':1, 'en': 'hello', 'rus': u'привет'}
url = urlencode(args, encoding='utf-8')
print(url)

# а теперь обратно
q = '%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82'
q = bytes(q.replace('%', '='), 'UTF-8')
print(q)
b = quopri.decodestring(q)
print(b.decode('UTF-8'))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы