Проблема с отображением текста в виде таблицы в Outlook при отправке из Linux с помощью Python

Gengar

Новичок
Пользователь
Июн 5, 2020
2
0
1
Добрый день.

- Операционная система - "Debian GNU/Linux 9 (stretch)"
- Версия Python 3.8
- Версии библиотек с которыми работаю - прикрепленный файл - 111.txt
- Outlook 2016

Код для отправки письма -

import os
import smtplib

fo = open(filename, "r")
data_b = fo.read()
fo.close()

BODY = "\r\n".join((
"From: %s" % FROM,
"To: %s" % TO,
"Subject: %s" % SUBJECT ,
"",
data_b
))


server = smtplib.SMTP(HOST)
server.sendmail(FROM, TO, BODY.encode('utf8'))
server.quit()

Текст который отправляем по почте (прикрепленный файл - 333.txt) -

1591336899217.png

Текст выше после получения в outlook -
1591337217689.png

Вопрос - Можно ли передать текст в виде таблицы из Linux в Outlook с помощью python, без искажений текста и как это сделать?
 

Вложения

  • 333.txt
    3 КБ · Просмотры: 1
  • 111.txt
    2,1 КБ · Просмотры: 1

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Вот тут есть ответ на ваш вопрос: ссылка.
 

Gengar

Новичок
Пользователь
Июн 5, 2020
2
0
1
Вот тут есть ответ на ваш вопрос: ссылка.

К сожалению данная статья не помогла.

Исправил код в соответствии с данной статьей -

fo = open(filename, "r")
data_b = fo.read()
fo.close()

print(data_b) # проверка полученных данных из файла

message = MIMEMultipart("alternative", None, [MIMEText(data_b)])

server = smtplib.SMTP(HOST)
server.sendmail(FROM, TO.split(","), message.as_string())
server.quit()

Ошибок при выполнении кода нет.

Команда print(data_b) отображает красивый текст в виде таблиц -

1591344954643.png

В письме outlook текст также искажается -

╒═══════════════════╤═════════════════════════════════════════════════════════════════════════════════════╤═════════════╤══════════╕

│ Name Device │ Path to file backup │ File size │ Status │

╞═══════════════════╪═════════════════════════════════════════════════════════════════════════════════════╪═════════════╪══════════╡
 

Форум IT Специалистов