Форум сайта python.su
Добрый день.
Столкнулся со следующей проблемой и не могу понять почему так происходит. Скрипт забирает из БД данные и пересылает их по почте. Если скрипт запускается с машины с Windows 7 то на почту приходит совершенно корректное читаемое письмо, если скрипт запускается с Windows Server 2008 то на почту приходит письмо с кракозябрами - и кракозябры в кодировке CP-1252. В таком случае приходится принудительно делать преобразование - encode('1252').decode('1251') и тогда все корректно.
Помогите понять в чем разница?
Офлайн
BigmaxМБ в региональных настройках веды? 1252 латиница, 1251 - кирилица.
Помогите понять в чем разница?
[code python][/code]
Офлайн
Почта отправляется из скрипта через smtplib. Честно говоря, вообще непонятно как винда влияет на данные, которые запросом берутся из БД, сохраняются в переменную и передаются в функцию отправки почты. Я пробовал ради интереса менять chcp у винды на сервере, но это конечно ничего не дало.
Офлайн
Bigmax
в бд какая кодировка?
Офлайн
В БД стандартная виндовая 1251.
Офлайн
Сверил региональные настройки на обеих машинах - идентично, разница только в том что Windows 7 на русском языке, а Windows Server 2008 на англ. Но язык системы стоит русский и там и там.
Офлайн
там в “язык и региональные стандарты” , вкладка “дополнительно”, секция “язык программ не поддерживающих Юникод” у вас на сервере скорее всего английский, попробуйте поменчять на Русский.
BigmaxЭто как? язык интерфейса чтоли? тогда как вы определили что 2008 английская? или раскладка клавиатуры?
Windows 7 на русском языке, а Windows Server 2008 на англ. Но язык системы стоит русский и там и там.
[code python][/code]
Отредактировано PEHDOM (Июнь 23, 2017 00:52:31)
Офлайн
PEHDOMДа, язык интерфейса не серваке англ. Не думаю что это должно повлиять
Это как? язык интерфейса чтоли? тогда как вы определили что 2008 английская? или раскладка клавиатуры?
Офлайн
PEHDOMТам стоял Russian(Russia)
там в “язык и региональные стандарты” , вкладка “дополнительно”, секция “язык программ не поддерживающих Юникод” у вас на сервере скорее всего английский, попробуйте поменчять на Русский.
Офлайн