Python создает новую почту. Строка возврата ( n) в теле не работает

#python #html #outlook

#python #HTML #outlook

Вопрос:

Я работаю над скриптом python, который должен создать новую почту с определенным текстовым телом.

Факт в том, что n не работает как исключенный.

Мой код приведен ниже :

     outlook = win32.Dispatch('outlook.application')
    mail = outlook.CreateItem(0)
    mail.To = recipient
    mail.Subject = subject
    mail.HtmlBody = "This is a return line test nTest"
 

Отображаемое тело :

 This is a return line test Test
 

И не :

 This is a return line test 
Test
 

Чего мне не хватает?

Ответ №1:

Поскольку вы используете HtmlBody , вместо n , вы хотите использовать теги стиля HTML для ваших новых строк. Это называется разрывами строк, и они выглядят так: <br> . Итак, вы хотите заменить n на <br> :

 outlook = win32.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = recipient
mail.Subject = subject
mail.HtmlBody = "This is a return line test <br>Test"
 

Ответ №2:

Символ новой строки n не работает .HtmlBody , вместо этого используйте mail.Body

Пример

 mail.Body = "This is a return line test nTest"
 

Свойство HTMLBody

Возвращает или задает строку, представляющую тело HTML указанного элемента. Свойство HTMLBody должно быть синтаксической строкой HTML

Или вы можете использовать <pre> набор тегов для распознавания новых строк в HTML

Пример

 mail.HTMLBody = "<pre>This is a return line test nTest</pre>"
 

https://www.w3schools.com/tags/tag_pre.asp