如何使用Python中的smtplib发送文本或word文件?
我在谷歌上搜索过,但这些例子对像我这样的初学者来说有点难。如果有任何简单的例子…我知道如何发送基于html的消息最后一条语句中的附件是什么?请注意,我在函数调用中使用了r',这个选项仅与python 3.6+相关,如果您使用的是以前的版本,只需将其放出来并将所有斜杠加倍即可刷新页面,我把它解释得更清楚了我理解了大部分内容…但是在“附件”中指定什么呢?我运行了你的代码,但在我的gmail收件箱中,它说找不到地址,你的邮件没有送达bilalgcu29@gmail因为找不到域名gmail。请检查拼写错误或不必要的空格,然后重试。如何使用Python中的smtplib发送文本或word文件?,python,smtp,smtpclient,smtplib,Python,Smtp,Smtpclient,Smtplib,我在谷歌上搜索过,但这些例子对像我这样的初学者来说有点难。如果有任何简单的例子…我知道如何发送基于html的消息最后一条语句中的附件是什么?请注意,我在函数调用中使用了r',这个选项仅与python 3.6+相关,如果您使用的是以前的版本,只需将其放出来并将所有斜杠加倍即可刷新页面,我把它解释得更清楚了我理解了大部分内容…但是在“附件”中指定什么呢?我运行了你的代码,但在我的gmail收件箱中,它说找不到地址,你的邮件没有送达bilalgcu29@gmail因为找不到域名gmail。请检查拼写错
import smtplib
from os.path import basename
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.utils import COMMASPACE, formatdate
def send_mail(send_from,password send_to, subject, text, file=None,
server="127.0.0.1"):
msg = MIMEMultipart()
msg['From'] = send_from
msg['To'] = COMMASPACE.join(send_to)
msg['Date'] = formatdate(localtime=True)
msg['Subject'] = subject
msg.attach(MIMEText(text))
with open(file, "rb") as fil:
part = MIMEApplication(
fil.read(),
Name=basename(file)
)
# After the file is closed
part['Content-Disposition'] = 'attachment; filename="%s"' % basename(file)
msg.attach(part)
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(send_from, password )
text = msg.as_string()
server.sendmail(send_from, send_to, text)
server.quit()
send_mail('From','Password','ToMail','Subject','msg',r'FullPath')