fbpx

Русский язык в imapObj.search (Python 2.x)

225 просмотра
0
0 Комментариев

Возникла проблема следующего характера: требуется произвести поиск письма по теме на русском языке.
imapObj — инстанс imaplib.IMAP4 после логина и селекта.
Сначала пробовал в лоб:

>>> imapObj.search('utf', 'subject', 'Проверка')
('NO', ['[BADCHARSET] Unsupported text encoding. sc=0Ug6pN7UJ0U1'])

Как видно, сервер возвращает ошибку кодировки.
Если же попробовать передавать юникодную строку, то получаем ошибку из imaplib:

>>> imapObj.search('utf', 'subject', u'Проверка')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\imaplib.py", line 625, in search
    typ, dat = self._simple_command(name, 'CHARSET', charset, *criteria)
  File "C:\Python27\lib\imaplib.py", line 1070, in _simple_command
    return self._command_complete(name, self._command(name, *args))
  File "C:\Python27\lib\imaplib.py", line 857, in _command
    self.send('%s%s' % (data, CRLF))
  File "C:\Python27\lib\imaplib.py", line 245, in send
    self.sock.sendall(data)
  File "C:\Python27\lib\socket.py", line 224, in meth
    return getattr(self._sock,name)(*args)

Не подскажете, как можно решить эту проблему?


Добавить комментарий

1 Ответы

Python Опубликовано 17.01.2019
0

Вместо utf пробуйте написать utf-8

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up