У меня есть документ Word с форматированным текстом, изображениями и таблицами. Вы можете вручную скопировать его содержимое и без проблем вставить в Outlook. Как это сделать на Python?
Мой код:
import win32com.client
word = win32com.client.Dispatch("Word.Application")
doc = word.Documents.Open(your_doc_path)
contents = 'What here?' # doc.Content?
outlook = win32com.client.Dispatch("Outlook.Application")
# Create a new MailItem object
msg = outlook.CreateItem(0)
msg.Body = 'What here?' # `contents` throws pywintypes.com_error
msg.Display(False)
Ближайшие проблемы:
Копировать формат Word в сообщение Outlook
Содержание текстового документа как тела сообщения электронной почты
Как вставить в Outlook из Microsoft Word
Экспорт отформатированного текста для просмотра и сохранения форматирования
Не работает:
1-Сохранение документа Word в формате HTML (аналогично RTF) и
with open(html_path, 'r', errors='ignore') as f:
# Possible UnicodeDecodeError
doc_body = f.read()
msg.BodyFormat = 2 # olFormatHTML
msg.Body = doc_body
2-Чтение document.xml в заархивированном документе Word.
Возможный способ:
Свойство WordEditor класса Inspector возвращает экземпляр документа Word, который представляет тело сообщения.
Как применить WordEditor через win32com?
'rb'
и установитеmsg.BodyFormat = 3 # olFormatRichText
- person Max   schedule 13.10.2018