当前位置 : 主页 > 编程语言 > python >

爬虫学习(9):python 自动发送QQ邮箱

来源:互联网 收集:自由互联 发布时间:2022-06-15
文章目录 ​​一、授权码获取​​ ​​二、发送文本和附件​​ ​​三、继续升级​​ ​​四、声明​​ 一、授权码获取 开启它: 发送短信: 发送后点击我已发送: 把这个授权码


文章目录

  • ​​一、授权码获取​​
  • ​​二、发送文本和附件​​
  • ​​三、继续升级​​
  • ​​四、声明​​

一、授权码获取

爬虫学习(9):python 自动发送QQ邮箱_打开文件
开启它:
爬虫学习(9):python 自动发送QQ邮箱_打开文件_02
发送短信:
爬虫学习(9):python 自动发送QQ邮箱_打开文件_03
发送后点击我已发送:
爬虫学习(9):python 自动发送QQ邮箱_开发语言_04
把这个授权码复制下来保存起来,下次还可以用。

二、发送文本和附件

你只需要修改邮箱,授权码,当然如果你想发送附件也把附件路径加上即可。
python代码:

# coding=gbk
"""
作者:川川
@时间 : 2021/11/10 10:50
群:970353786
"""
import smtplib
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication

# 写成了一个通用的函数接口,想直接用的话,把参数的注释去掉就好
def send_email(msg_from, passwd, msg_to, text_content, file_path=None):
msg = MIMEMultipart()
subject = "python 实现邮箱发送邮件" # 主题
text = MIMEText(text_content)
msg.attach(text)

# file_path = r'read.md' #如果需要添加附件,就给定路径
if file_path: # 最开始的函数参数我默认设置了None ,想添加附件,自行更改一下就好
docFile = file_path
docApart = MIMEApplication(open(docFile, 'rb').read())
docApart.add_header('Content-Disposition', 'attachment', filename=docFile)
msg.attach(docApart)
print('发送附件!')
msg['Subject'] = subject
msg['From'] = msg_from
msg['To'] = msg_to
try:
s = smtplib.SMTP_SSL("smtp.qq.com", 465)
s.login(msg_from, passwd)
s.sendmail(msg_from, msg_to, msg.as_string())
print("发送成功")
except smtplib.SMTPException as e:
print("发送失败")
finally:
s.quit()
msg_from = '283****79@qq.com' # 发送方邮箱
passwd = 'd******a' # 填入发送方邮箱的授权码(就是刚刚你拿到的那个授权码)
msg_to = '283******9@qq.com' # 收件人邮箱,我是自己发给自己
text_content = "hi,this is a demo!" # 发送的邮件内容
file_path = 'read.md' # 需要发送的附件目录
send_email(msg_from,passwd,msg_to,text_content,file_path)

运行:(收到邮箱)
爬虫学习(9):python 自动发送QQ邮箱_打开文件_05

三、继续升级

你是否可以在这基础上再做改动,比如爬取某个网页的主要内容发送到邮箱?爬虫有趣的东西多着呢!比如我自动填体温,把填报后的效果发送给我邮箱。
python代码:(txt里面为我的具体内容)

# coding=gbk
"""
作者:川川
@时间 : 2021/11/10 11:50
群:970353786
"""
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication

def send_email(msg_from, passwd, msg_to, text_content):
msg = MIMEMultipart()
subject = "计算机自动填体温结果" # 主题
text = MIMEText(text_content)
msg.attach(text)

msg['Subject'] = subject
msg['From'] = msg_from
msg['To'] = msg_to
try:
s = smtplib.SMTP_SSL("smtp.qq.com", 465)
s.login(msg_from, passwd)
s.sendmail(msg_from, msg_to, msg.as_string())
print("发送成功")
except smtplib.SMTPException as e:
print("发送失败")
finally:
s.quit()
msg_from = '28****579@qq.com' # 发送方邮箱
passwd = 'dw****rodhda' # 填入发送方邮箱的授权码(就是刚刚你拿到的那个授权码)
msg_to = '2****9579@qq.com' # 收件人邮箱

with open("log_t.txt", "r",encoding="utf-8") as f: # 打开文件
data = f.read() # 读取文件
text_content = data # 发送的邮件内容
send_email(msg_from,passwd,msg_to,text_content)

运行效果:
爬虫学习(9):python 自动发送QQ邮箱_打开文件_06

四、声明

本篇教程为辅助爬虫的教程,比如你怕渠道某个东西,你需要他发邮箱给你,并不想每次都去开电脑看。暂时先学到这。


上一篇:爬虫学习(0):python模块安装
下一篇:没有了
网友评论