需要有关使用python发送带有附件的电子邮件的指导.

你好, 我有点困惑. 我想制作一个程序,该程序将从数据库中获取一些数据,并且 制作一串文本. 并将其发送到一个相应的电子邮件ID 人. 接下来,我还想发送照片的附件以及电子邮件. 我将被要求在Windows XP上运行此程序. 有人可以指导我如何实现这一目标吗? 我在Windows上需要什么来发送电子邮件? 我相信Yahoo,Gmail,Rediff和MSN支持POP3和SMTP? 如果我错了,请纠正我. 其次,Windows上使用了哪个库来执行此操作? 我知道必须有python库来执行此操作, 但是除此之外,我不知道窗户上需要什么 机器将电子邮件发送到大多数是Yahoo,Gmail和MSN. 请给我一些想法. 克里希纳克特.

# 回答1

这是我一直在使用的功能:P 导入smtplib 从email.mimemultipart导入mimemultipart 从email.mimebase导入mimebase 来自email.mimetext import mimeText 从email.utils导入commaspace,格式化 来自电子邮件导入编码器 def sendmail(arrrecipients,发件人,主题,消息,文件= []): """发送带有附件的电子邮件" #SMTP地址 smtpserver =''#在此处以字符串格式提供SMTP #身份验证部分 AuthreQuired = 0#如果您需要使用SMTP auth设置为1 smtpuser =''#for smtp auth,在此处设置SMTP用户名 smtppass =''#for smtp auth,在此处设置SMTP密码 #建立电子邮件的主体 mssg = mimemultipart() mssg ['from'] =发件人 mssg ['to'] = commaspace.join(arrrecipients) mssg ['date'] =格式化(localtime = true) MSSG ['主题'] =主题 MSSG.ATTACH(mimeText(消息)) #附件 对于文件中的文件: part = mimebase('应用程序',"八位字节") part.set_payload(open(文件," rb").read()) concoders.encode_base64(零件) part.add_header('content-disposition','附件; filename ="%s"'%os.path.basename(file)) MSSG.ATTACH(部分) session = smtplib.smtp(smtpserver) 如果授权: session.login(smtpuser,smtppass) smtpresult = session.sendmail(发送者,arrrecipients, mssg.as_string()) 如果Smtpresult: errstr ="" 对于smtpresult.keys()中的食谱: errstr ="""无法将邮件交付到:%s 服务器说:%s %s %s""%%(食谱,smtpresult [regece] [0],smtpresult [cove] [1],errstr) 提高smtplib.smtpexception,errstr krishnakant mane aécrit:( _@_) 2006年12月11日04:54:04 -0800,伯纳德
# 回答2

克里希纳特·曼恩(Krishnakant Mane)写道: 确实感谢您的功能伯纳德. 明天我将有一个Windows机器. 但是我需要安装 在Python库所需的任何内容之外,有什么事情吗? 是我必须安装Outlook还是需要安装 任何 服务器/客户端在计算机上要使用的功能? 您将需要一些工作的电子邮件帐户. 它可能是您本地计算机上的服务器,也可以是Gmail 帐户. 如果您没有要发送的电子邮件帐户,那么您 将必须获得一个或创建自己的服务器.
# 回答3

我上了一堂课来处理这个时间,这可能是 帮助你. 您可以在http://phlik.ishpeck.net/index.php?p=B1114201575Phlik上找到它. 克里希纳特·曼恩(Krishnakant Mane)写道:

标签: python

添加新评论