2016-08-09 2 views
0

Прошу прощения за плохую грамматику раньше, у меня есть случай, когда отправить сообщение с помощью заметок лотоса в Python ссылка, которую я вставляю в сообщение, не создается как ссылка (не кликабельна , и генерировать как обычный текст) в doc.Body и ссылка не видна с помощью doc.HTMLBody.Не удается создать ссылку при отправке электронной почты с помощью Lotus Notes в Python

sess=win32com.client.Dispatch("Notes.NotesSession") 
db = sess.getdatabase('','') 
db.openmail 
agent=db.getAgent("DeleteOldDocs") 
doc=db.createdocument 
doc.SendTo = recipients 
doc.Subject = subject 
doc.Body = "Test link http://www.thislink.com" 
doc.HTMLBody = "<a href='http://www.thislink.com'>Link</a>" 
doc.send(0) 

Как можно отправить интерактивную ссылку в сообщении электронной почты?

и это, например:

This email send by program, and as You can see the link is not clickable and must be copy first then paste to the browser. This is not convenient for the client

+1

'Http: //' как начать URL. Никакой обратной косой черты. –

+0

@KlausD. Я уже использовал двойную косую черту и все еще не сгенерирован как ссылка. –

ответ

1

NotesMIMEEntity Используйте для create a HTML formatted mail.

Ваш пример будет выглядеть следующим образом, то:

sess=win32com.client.Dispatch("Notes.NotesSession") 
db = sess.getdatabase('','') 
stream = sess.CreateStream 
sess.ConvertMIME = False 
doc = db.CreateDocument 
doc.Form = "Memo" 
body = doc.CreateMIMEEntity() 
header = body.CreateHeader("Subject") 
header.SetHeaderVal(subject) 
header = body.CreateHeader("To") 
header.SetHeaderVal(recipients) 
stream.writetext("<html><body>") 
stream.writetext("Test link http://www.thislink.com <a href='http://www.thislink.com'>Link</a>") 
stream.writetext("</body></html>") 
body.SetContentFromText(stream, "text/HTML;charset=UTF-8", 1728) 
doc.Send(0) 
sess.ConvertMIME = True 
+0

спасибо, прежде чем за ваш ответ, сэр, у меня снова возникла проблема в этой части body = doc.CreateMIMEEntity, и я получил ошибку, подобную этой >. как я чего-то пропустил. –

+0

Это может быть проблема синтаксиса, специфичная для python. Он работает с 'body = doc.CreateMIMEEntity()'? –

+0

[Решено] Отлично! :) Большое спасибо, сэр, это вопрос, который я могу решить долгое время. –