python3:利用smtplib库和smtp.qq.com邮件服务器发送邮件

python3:利用smtplib库和smtp.qq.com邮件服务器发送邮件

使用qq的邮件服务器需要注意的两个地方主要是:

1.协议问题 使用465端口 SSL 协议

2.口令问题 出现SMTPAuthenticationError 主要的原因就是口令和帐号信息不对,这里我们使用qq服务器发送 需要先到邮箱里设置独立密码(必须), 然后开启

SMTP/POP3服务。然后用qq手机安全中心扫一扫会给一个授权码, 在代码中要填写的密码是这个授权码, 而不是邮箱密码!

示例代码:

# python3
# author:lizm
# date:2018-07-18 10:00:00
# -*- coding: utf-8 -*-
‘‘‘
    description:登录qq邮箱发送邮件
‘‘‘
from smtplib import SMTP_SSL
from email.header import Header
from email.mime.text import MIMEText

#邮件定义
mail_info = {
    "from": "******@qq.com",
    "to": "******@qq.com",
    "hostname": "smtp.qq.com",
    "username": "******@qq.com",
    "password": "*******",
    "mail_subject": "test",
    "mail_text": "hello, this is a test email, sended by py",
    "mail_encoding": "utf-8"
}

if __name__ == ‘__main__‘:
    #使用SMTP_SSL就是默认使用465端口
    smtp = SMTP_SSL(mail_info["hostname"])
    #set_debuglevel()是用来调试的。参数值为1表示开启调试模式,参数值为0关闭调试模式
    smtp.set_debuglevel(1)

    #连接服务器
    smtp.ehlo(mail_info["hostname"])
    #邮箱登录
    smtp.login(mail_info["username"], mail_info["password"])

    #填写正文内容
    msg = MIMEText(mail_info["mail_text"], "plain", mail_info["mail_encoding"])
    #填写邮件标题
    msg["Subject"] = Header(mail_info["mail_subject"], mail_info["mail_encoding"])
    #发送者邮箱地址
    msg["from"] = mail_info["from"]
    #接收者邮件地址
    msg["to"] = mail_info["to"]
    #发送邮件
    smtp.sendmail(mail_info["from"], mail_info["to"], msg.as_string())
    #退出
    smtp.quit()

原文地址:https://www.cnblogs.com/lizm166/p/9328049.html

时间: 2024-12-26 12:00:59

python3:利用smtplib库和smtp.qq.com邮件服务器发送邮件的相关文章

python使用smtplib库和smtp.qq.com邮件服务器发送邮件(转)

使用qq的邮件服务器需要注意的两个地方主要是: 1.协议问题 使用465端口 SSL 协议 2.口令问题 出现SMTPAuthenticationError 主要的原因就是口令和帐号信息不对,这里我们使用qq服务器发送 需要先到邮箱里设置独立密码(必须), 然后开启 SMTP/POP3服务.然后用qq手机安全中心扫一扫会给一个授权码, 在代码中要填写的密码是这个授权码, 而不是邮箱密码! 下面贴个代码: #coding:utf8 from smtplib import SMTP_SSL from

python3 通过qq 服务器 发送邮件

# -*- encoding: utf-8 -*-import os, sysimport smtplibfrom smtplib import SMTP_SSLfrom email.header import Headerfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartfrom email.mime.application import MIMEApplication mailI

smtplib与email模块(实现邮件的发送)

SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件.HTML邮件以及带附件的邮件. Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件. 1.smtplib模块 smtplib模块定义了一个简单的SMTP客户端,可以用来在互联网上发送邮件. 定义的类有如下: class smtplib.SMTP([host[, port[, local_hostname[, timeout]]]])class smtpl

使用python中的smtplib库,写一个简单的发送qq邮件程序,速成!!

#-*-coding:utf-8-*- import smtplib from  smtplib import SMTP_SSL from email.mime.text import MIMEText from email.header import Header #定义一个字典存储发送和接收,邮箱账号密码主题.内容及编码相关信息 mail_info = {     "from": "[email protected]",  #发件人     "to&q

Python3 使用smtplib和email模块发送邮件

SMTP (Simple Mail Transfer Protocol) 邮件传送代理 (Mail Transfer Agent,MTA) 程序使用SMTP协议来发送电邮到接收者的邮件服务器.SMTP协议只能用来发送邮件,不能用来接收邮件.大多数的邮件发送服务器 (Outgoing Mail Server) 都是使用SMTP协议.SMTP协议的默认TCP端口号是25. SMTP协议的一个重要特点是它能够接力传送邮件.它工作在两种情况下:一是电子邮件从客户机传输到服务器:二是从某一个服务器传输到另

python:利用smtplib模块发送邮件详解

自动化测试中,测试报告一般都需要发送给相关的人员,比较有效的一个方法是每次执行完测试用例后,将测试报告(HTML.截图.附件)通过邮件方式发送. 首先我们要做: 进入163邮箱,点击设置中的pop3/smtp/imap 开启smtp服务,如果没有开启,点击设置,手机号验证后勾选开启即可,开启后图如下: 主要用到的就是smtp服务器:smtp.163.com 然后设置客户端授权密码: 记住密码,如果不记得密码在这重新授权.手机号验证即可重新授权.这个密码一会写代码的时候要用 设置成功后,开始写代码

python3+requests库框架设计08-发送邮件

使用python3的email模块和smtplib模块可以实现发送邮件的动能.email模块用来生成email,smtplib模块用来发送邮件,接下来看如何在生成测试报告之后,自动将邮件发给项目组的人,在Common文件夹下新建my_email.py文件,项目结构如下. #!/usr/bin/python3 import smtplib from email.mime.text import MIMEText from email.utils import formataddr from ema

python:利用smtplib发送邮件详解

本文转自:https://www.cnblogs.com/insane-Mr-Li/p/9121619.html 自动化测试中,测试报告一般都需要发送给相关的人员,比较有效的一个方法是每次执行完测试用例后,将测试报告(HTML.截图.附件)通过邮件方式发送. 首先我们要做: 进入163邮箱,点击设置中的pop3/smtp/imap 开启smtp服务,如果没有开启,点击设置,手机号验证后勾选开启即可,开启后图如下: 主要用到的就是smtp服务器:smtp.163.com 然后设置客户端授权密码:

C#利用SMTP服务器发送邮件

使用.net(C#)发送邮件学习手册(带成功案例) 1.了解发送邮件的三种方式 2.实例介绍使用client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.PickupDirectoryFromIis 3.如何设定本机IIS的SMTP服务器 1.了解发送邮件的三种方式 第一:client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; //通過遠程SMTP服務器傳送