脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python自动发送QQ邮箱的完整步骤

python自动发送QQ邮箱的完整步骤

2022-02-27 14:32川川菜鸟 Python

最近在自己学习Python爬虫,学到了用Python发送邮件,觉得这个可能以后比较实用,所以下面这篇文章主要给大家介绍了关于python自动发送QQ邮箱的相关资料,需要的朋友可以参考下

一、授权码获取

python自动发送QQ邮箱的完整步骤

开启它:

python自动发送QQ邮箱的完整步骤

发送短信:

python自动发送QQ邮箱的完整步骤

发送后点击我已发送:

python自动发送QQ邮箱的完整步骤

把这个授权码复制下来保存起来,下次还可以用。

 

二、发送文本和附件

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

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)

运行:(收到邮箱)

python自动发送QQ邮箱的完整步骤

 

三、继续升级

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

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)  

运行效果:

python自动发送QQ邮箱的完整步骤

 

四、声明

自动邮箱发送仅仅用于个人学习练习,若用于其它等用途,后果自负,概不负责。

到此这篇关于python自动发送QQ邮箱的文章就介绍到这了,更多相关python自动发送QQ邮箱内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_46211269/article/details/121243675

延伸 · 阅读

精彩推荐