请问有用PYTHON的高手能给做一个发邮件的脚本吗?我是初学者,想拿来参考参考。谢谢!

2025-02-28 00:26:19
推荐回答(1个)
回答1:

基于smtplib的简单的

server = smtplib.SMTP('10.30.17.99')
server.set_debuglevel(1)
server.ehlo('localhost')
server.starttls()
server.ehlo('localhost')
server.sendmail(fromaddr, toaddrs, msg)
server.quit()

如果是基于notes COM接口的
def SendEmail(SendTo,CC,BCC,Subject,Body,Attachment=None,Pass=None):
if SendTo==None:
return
session=Dispatch("Lotus.NotesSession")
if Pass:
session.Initialize(Pass)
Server=session.GetEnvironmentString( "MailServer",True)
MaildbName=session.GetEnvironmentString( "MailFile",True)
db=session.GetDatabase(Server,MaildbName)
doc=db.CreateDocument()
doc.ReplaceItemValue("Form","Memo")
if SendTo:
doc.ReplaceItemValue("SendTo",SendTo)
if CC:
doc.ReplaceItemValue("CopyTo",SendTo)
if BCC:
doc.ReplaceItemValue("BlindCopyTo",SendTo)
if Subject:
doc.ReplaceItemValue("Subject",Subject)

stream=session.CreateStream()
stream.WriteText(Body)

bodyMime=doc.CreateMIMEEntity()
bodyMime.SetContentFromText(stream,"text/html;charset=iso-8859-1",False)

if Attachment:
RichTextItem = doc.CreateRichTextItem("Attachment")
for fn in Attachment:
RichTextItem.EmbedObject(1454, "", fn ,"Attachment")

doc.Send(False)