利用python实现自动发送邮件

利用python实现发送邮件

今天跟着视频学了一个小的知识点,如何利用python写一个小程序实现自动发送邮件。
首先我们需要有一个163邮箱(什么邮箱都可以)然后我们登录自己的邮箱,点击设置->POP3/SMTP/IMAP出现下图:
avater
默认画红框里的选项是没有勾选上的,这就要我们选择客户端授权密码–》开启如下图
avater
我这边可以开启了,如果点击开启时,会跳出这个窗口
avater
然后发送短信设置自己的授权密码(!注意:不能和自己的登录密码一致)
再回到我们的 POP3/SMTP/IMAP页面
avater
我们等等会用到图中划线的部分
前期准备工作已经好了下面就让我们开始写代码吧
首先我们要
导入一个发邮件的库

import smtplib

邮箱文本库

from email.mime.text import MIMEText

然后配置自己的SMTP服务器,这里我们用的是163的SMIP服务,如果你们用其他的邮箱的SMTP服务器也是可以的

SMTPServer ="smtp.163.com"

接着写发送邮箱的地址,也就是我们自己的163邮箱账号

Sender = "[email protected]"

再写发送者邮箱的密码,也就是我们刚才配置好的授权邮箱密码

passwd = "123456a"

我们在设置自己要发送的邮件的内容,这里我就随便输入了一个了。

message = "hockel is a good men "

然后我们要把我们发送的邮件内容转成邮件文本,这里我们要用了开头导入的邮件文本库MIMEText

msg = MIMEText(message)

我们可以给我发送邮件设置一个标题,操作如下。

msg["Subject"] = "来自帅哥的问候"

创建SMTP服务器smtplib.SMTP(SMTP服务, 端口号)

mailServer = smtplib.SMTP(SMTPServer, 25)

写登录邮箱login(邮箱账户,授权密码)

mailServer.login(Sender, passwd)

发送邮件的代码sendmail(发送者,接受者(这里有列表,可以有多人接受者),msg:发送消息:邮件内容。一般是msg.as_string():as_string()是将msg(MIMEText对象或者MIMEMultipart对象)变为str。

)

    mailServer.sendmail(Sender, ["[email protected]"],msg.as_string())

退出邮箱

mailServer.quit()

下面就是见证奇迹的时刻了,我们运行一下程序,然后打开接受者的邮箱如下如
avater
发送邮箱的具体代码如下,欢迎讨论:

# 发邮件的库
import smtplib
#邮件文本
from email.mime.text import MIMEText

# smtp服务器
SMTPServer ="smtp.163.com"

# 发邮件的地址
Sender = "[email protected]"

#发送者邮箱的密码
passwd = "123456a"

# 设置发送的内容
message = "hockel is a good men "

# 转换成邮件文本
msg = MIMEText(message)

# 标题
msg["Subject"] = "来自帅哥的问候"

#发送者
msg["From"] = Sender

#    创建SMTP服务器       服务器    端口号
mailServer = smtplib.SMTP(SMTPServer, 25)

#登录邮箱
mailServer.login(Sender, passwd)

# 发送邮件
for x in range(1,10):
    mailServer.sendmail(Sender, ["[email protected]"],msg.as_string())
    x += 1
# 退出邮箱
mailServer.quit()
发布了4 篇原创文章 · 获赞 0 · 访问量 1528

猜你喜欢

转载自blog.csdn.net/tonycarson/article/details/86651622
今日推荐