如何使用Python中的smtplib发送文本或word文件?

如何使用Python中的smtplib发送文本或word文件?,python,smtp,smtpclient,smtplib,Python,Smtp,Smtpclient,Smtplib,我在谷歌上搜索过,但这些例子对像我这样的初学者来说有点难。如果有任何简单的例子…我知道如何发送基于html的消息最后一条语句中的附件是什么?请注意,我在函数调用中使用了r',这个选项仅与python 3.6+相关,如果您使用的是以前的版本,只需将其放出来并将所有斜杠加倍即可刷新页面,我把它解释得更清楚了我理解了大部分内容…但是在“附件”中指定什么呢?我运行了你的代码,但在我的gmail收件箱中,它说找不到地址,你的邮件没有送达bilalgcu29@gmail因为找不到域名gmail。请检查拼写错

我在谷歌上搜索过,但这些例子对像我这样的初学者来说有点难。如果有任何简单的例子…我知道如何发送基于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')