python邮件开发—简单邮件发送(入门)
-
思路
-
大致思路:
登录——>写邮件——>发送 注意:通过脚本发送邮件时我们要考虑到整个过程的方方面面。
-
图示(此图来自网上):
-
-
工具
python-email 模块
举个简单的例子,当你登录邮箱,写好邮件后点击发送,这部分是由 SMTP 接管;而写邮件、添加附件是由 email 模块控制。
-
前奏:开通电子邮箱的SMTP功能(以QQ邮箱为例)
-
登录网页版的QQ邮箱
-
开启服务
-
获取服务密钥
验证通过后就可以获取服务密钥了,注意不要将自己的服务密钥告诉别人哦 将它复制下来,后面写代码要用到的(注意:可能后面我就叫它授权码了)
-
-
开干:写代码
-
步骤:
引入模块——>登录邮箱——>编写内容——>发送邮件
-
代码:
# 1. 引入模块 import smtplib # 负责连接服务器,发送邮件 import email # 负责邮件内容 # 2.登录邮箱(连接服务器) smtp_obj = smtplib.SMTP("smtp.qq.com") #选择QQ邮箱 smtp_obj.login('xxxx@qq.com','开启服务时的授权码') #登录 # 3. 编写邮件内容 mail_text = '这是一封使用Python发送的邮件' #邮件内容 msg_body = email.MIMEText(mail_text,'plain','utf-8')#创建邮件对象,并将邮件内容添加上去 # 4. 发送邮件 发送方的账号 接受方账号名字(可以有多个) 内容 as_string()是将邮件转为字符串 smtp_obj.sendmail('xxxx@qq.com',['aaaa@qq.com','bbbb@163.com'],msg_body.as_string())
-
-
结语:
本次带领大家写了一个简单的邮件发送小脚本,大家可以在此基础上进行提示(比如实现邮箱轰炸,或者使用GUI写一个自己的邮箱发送软件等)