【Python】邮件发送,实现运行脚本用户输入要发送的文件,输入完成发送成功

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

本文主要介绍如何编写Python脚本实现带附件邮件发送,在使用时运行脚本,会让用户输入需要发送邮件的文件,用户输入完毕后,点击回车,邮件发送成功。


提示:以下是本篇文章正文内容,下面案例可供参考

一、下载smtplib

在命令行中,使用命令pip install smtplib下载模块。

pip install smtplib

二、使用步骤

1.引入库

代码如下(示例):

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication

2.邮件发送信息,邮件接受信息设置,以及设置运行时输入

代码如下(示例):

emailitem = input('Please input the message you want to send:')
mailsend_host = 'smtp.qq.com'
#邮件的使用者账号
mailsend_user = '********'
#密码(授权码),授权码登陆QQ邮箱获取
mailsend_passwd = '***********'
#邮件发送者的邮箱地址
mail_sender = '************@qq.com'
#邮件接受者的邮箱地址,可以使用列表,可以发送到多个邮箱地址
mail_receivers = ['**********@qq.com']

3.设置发送邮件的内容

代码如下(示例):

sendmessage = MIMEMultipart()

4.设置邮件发送方和接收方信息

代码如下(示例):

#邮件主题
message['Subject'] = 'Your email from Test'
#发送方信息
message['From'] = mail_sender
#接受方信息
message['To'] = mail_receivers[0]

5.添加附件内容

代码如下(示例):

filesendname = emailitem
with open(filesendname, 'rb') as filesend:
    attachment = MIMEApplication(filesend.read(), _subtype='txt')
    attachment.add_header("Content-Disposition", "attachment", filename=filesendname)
    message.attach(attachment)

6.登陆进行邮件发送

代码如下(示例):

#登录并发送邮件
try:
    mailsend = smtplib.SMTP()
    #连接到邮箱服务器
    mailsend.connect(mailsend_host,25)
    #邮箱登录
    mailsend.login(mailsend_user,mailsend_passwd)
    #发送邮件
    mailsend.sendmail(mail_sender,mail_receivers,message.as_string())
    #退出
    mailsend.quit()
    print('mail send success')
exceptprint('mail send error')

7.实现效果

脚本运行效果

总结

本文主要介绍通过python实现带附件的邮件发送,在使用时运行脚本,会让用户输入需要发送邮件的文件,用户输入完毕后,点击回车,邮件发送成功。本文主要用于记录使用python实现邮件发送功能的具体实现方法,参考了网上的一些内容,仅用于学习记录,如有侵权请联系删除。

猜你喜欢

转载自blog.csdn.net/liaotianyin/article/details/130403464