SMTP协议属于TCP/IP协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了。...= smtplib.SMTP_SSL('smtp.163.com', 465) smtp.set_debuglevel(1) smtp.ehlo("smtp.163.com")...== "__main__": # 这里的密码是开启smtp服务时输入的客户端登录授权码,并不是邮箱密码 # 现在很多邮箱都需要先开启smtp才能这样发送邮件 send_email...然后再使用is_multipart()函数来判断内容是否有用,打印出有用内容最后用get_payload(decode=True).decode(‘utf-8’)解码并且打印到控制台。...官方文档: smtplib模块:https://docs.python.org/2/library/smtplib.html email模块:https://docs.python.org/2/
exception smtplib.SMTPServerDisconnected #当服务器意外断开连接时,或者在将SMTP实例连接到服务器之前尝试使用它时,会引发此异常。...exception smtplib.SMTPResponseException #包含SMTP错误代码的所有异常的基类当SMTP服务器返回错误代码时,会生成这些异常。...#错误代码存储在错误的smtp_code属性中,smtp_error属性设置为错误消息。 exception smtplib.SMTPSenderRefused #发送方地址拒绝了。...exception smtplib.SMTPConnectError #在与服务器建立连接时发生错误。..., *, policy=compat32, **_params) #创建包含图片数据的邮件体,imagedata原始二进制图片数据的字节字符串; 模块示例: #示例1.SMTP类支持with语句。
python的stmplib模块可以实现邮件的发送功能,可以模拟一个smtp客户端。在python2.3或者更高版本默认自带smtplib模块,无需额外安装。...,例如使用gmail的smtp服务时需要启动此项才能正常发送邮件,如SMTP.starttls()。.../usr/bin/python #coding=utf-8 import smtplib import string HOST = "smtp.xxxxxxxx.com" #定义smtp主机 SUBJECT.../usr/bin/python #coding=utf-8 import smtplib import string from smtplib import SMTP_SSL #采用SSL加密模块 HOST.../usrbin/python #coding: utf-8 import smtplib from smtplib import SMTP_SSL from email.mime.text import
com' username = '***' password = '***' msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8',单字节字符不需要 msg.../usr/bin/env python3 #coding: utf-8 import smtplib from email.mime.text import MIMEText sender = '**.../usr/bin/env python3 #coding: utf-8 import smtplib from email.mime.multipart import MIMEMultipart from.../usr/bin/env python3 #coding: utf-8 import smtplib from email.mime.text import MIMEText sender = '*...' username = '***' password = '***' msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8',单字节字符不需要 msg['
Python创建 SMTP 对象语法如下: import smtplib smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] ) smtplib...模块负责发送邮件 smtplib模块还提供了SMTP_SSL类和LMTP类,对它们的操作与SMTP基本一致。...-8格式的,如果不编码原标头中文用户名,用户名将无法被邮件解码 name, addr = parseaddr(s) return formataddr((Header(name, "utf.../usr/bin/env python3.4 # encoding: utf-8 """ Created on 18-5-17 @title: '测试版' @author: Xusl """ import...8') msg['Subject'] = Header(subject, 'utf-8') smtp = smtplib.SMTP() smtp.connect(smtpserver) smtp.login
/usr/bin/python # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.header...", 'utf-8') subject = 'Python SMTP 邮件测试' message['Subject'] = Header(subject, 'utf-8') try:...该程序的正常结果如下: [dechin@dechin-manjaro smtp]$ python3 smtp_test.py 邮件发送成功 另外由于这里采用了tracback做错误日志采集,因此即使有报错程序也能继续执行...,但是会广播错误日志。.../usr/bin/python # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.header
---- 在Python中,smtplib库提供了方便的途径发送电子邮件。使用方法也是结合SMTP邮件结构,先构建出邮件头信息,然后使用sendmail方法发送邮件。...', 'plain', 'utf-8') message['From'] = Header('python smtplib测试', 'utf-8') message['To'] = Header('测试...邮件发送成功') except smtplib.SMTPException: print('Error: 无法发送邮件') 在实际工作中我们一般会通过第三方的SMTP服务来实现发送,这里以腾讯QQ...', 'plain', 'utf-8') message['From'] = Header('python smtplib测试', 'utf-8') message['To'] = Header('测试...'Error: 无法发送邮件') ---- Django 在Python smtplib的基础上提供了更简化的封装,发送邮件速度快,能在开发中自测,及在不支持 SMTP 的平台上支持发送邮件。
(注:截图来自《流畅的python》P88) 这些编解码器通常用在open(),str.encode(),bytes.decode()等函数中。最常见的编解码器肯定是utf-8。...0x04 处理常见的编解码错误 在用python进行编解码时,经常发生各种错误。很多人的办法就是各种google各种试,搞定之后就不再管了。我自己之前就是这样。...这里的不符合要求有两种情况,一种是字节序列错误的,一种就是用的解码器不合适。 SyntaxError python3默认使用UTF-8编码源码,python2则默认使用ASCII。...如果加载的.py文件中包含UTF-8之外的数据,而且没有声明编码,就会发生SyntaxError。 处理编解码的最佳实践时,明确指定encoding字段,显式声明所用的编解码器。...sys.getdefaultencoding() 当在python程序内,在字节序列和字符串之间转换时,默认使用这个编码。python默认的是UTF-8。
编解码器 在字符与字节之间的转换过程称为编解码,Python自带了超过100种编解码器,比如: ascii(英文体系) gb2312(中文体系) utf-8(全球通用) latin1 utf-16 编解码器一般有多个别名...,遇到无法转换的字节时会抛出UnicodeDecodeError异常。...这是因为不是每个字节都包含有效的ASCII字符,也不是每个字符都是有效的UTF-8。 处理方式也有两种,跟上面一样。 SyntaxError Python3默认使用UTF-8编码源码。...在程序中尽量少接触二进制,把字节解码为字符,只处理字符串对象。比如在Django中,view应该输出Unicode字符串,Django会负责把响应数据编码成字节序列,而且默认使用UTF-8编码。...小结 本文介绍了Python的编解码器,以及可能出现的UnicodeEncodeError、UnicodeDecodeError、SyntaxError问题,然后给出了Python的open函数处理文本文件的原则
/usr/bin/python 2 # -*- coding: utf-8 -*- 3 import smtplib 4 def sendMail(body): 5 smtp_server...继续回到主题,发送邮件带附件: 1 # coding=utf-8 2 #1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 3 4 #2.注释:包括记录创建时间,创建人,项目名称。...1.3 Python发送HTML邮件 1 # coding=utf-8 2 #1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 3 4 #2.注释:包括记录创建时间,创建人,项目名称...1.4 Python发送图片邮件 # coding=utf-8 #1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 #2.注释:包括记录创建时间,创建人,项目名称。...小结 1、linux环境下提示AttributeError: module 'smtplib' has no attribute 'SMTP',Windows环境运行代码也报如下错误: ?
Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。...('管理员 ' % to_addr) msg['Subject'] = Header('来自SMTP的问候……', 'utf-8').encode() server = smtplib.SMTP...要更安全地发送邮件,可以加密SMTP会话,实际上就是先创建SSL安全连接,然后再使用SMTP协议发送邮件。 只需要在创建SMTP对象后,立刻调用starttls()方法,就创建了安全连接。...如果因为网络问题无法连接Gmail的SMTP服务器,请相信我们的代码是没有问题的,你需要对你的网络设置做必要的调整。...小结 使用Python的smtplib发送邮件十分简单,只要掌握了各种邮件类型的构造方法,正确设置好邮件头,就可以顺利发出。
python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。...创建 SMTP 对象 Python创建 SMTP 对象语法如下: import smtplib smtpObj = smtplib.SMTP( [host [, port [, local_hostname.../usr/bin/python # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.header.../usr/bin/python # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.header...SMTP 邮件测试' #邮件主题 message['Subject'] = Header(subject, 'utf-8') try: smtpObj = smtplib.SMTP()
使用python的email、smtplib、poplib模块收发邮件 一封电子邮件的旅程是: MUA:Mail User Agent——邮件用户代理。...import smtplib # smtplib模块负责发送邮件 # 类smtplib.SMTP([host[, port[, local_hostname[, timeout]]]]) :SMTP对象...# 其中,host:smtp服务器主机名 # 其中,port:smtp服务器的端口,默认是25 # 如果在创建SMTP对象时定义了这两个参数,在初始化时会自动调用connect方式连接服务器...# smtplib模块还提供了SMTP_SSL类和LMTP类,对它们的操作与SMTP基本一致。...格式的,如果不编码原标头中文用户名,用户名将无法被邮件解码 name, addr = parseaddr(s) return formataddr((Header(name, "utf-
环境:python2.7 1 #coding:utf-8 2 from __future__ import unicode_literals 3 __author__ = 'crista' 4...54 server.quit() 55 except smtplib.SMTPException: 56 print "Error:无法发送邮件" 57 58 59...可能出现的报错: smtplib 模块 1、smtplib.SMTPAuthenticationError: (550, b'User has no permission') 2、smtplib.SMTPAuthenticationError...: (535, b'Error: authentication failed') 这两个错误是你的密码用的不是授权码导致 3、554 DT:SPM 163 smtp5 这属于网易邮箱的一个退回检测机制导致...server.quit() except smtplib.SMTPException: print "Error:无法发送邮件" if __name__ == "_
python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。...Python创建 SMTP 对象语法如下: import smtplib smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] ) 参数说明.../usr/bin/python3 import smtplib from email.mime.text import MIMEText # 第三方邮件服务器设置 mail_host = 'smtp...: print("Error: 无法发送邮件") 2....: print("Error: 无法发送邮件")
Python实现自动发送邮件 1.开启SMTP服务 为了实现自动发送邮件的目的,我们需要在邮箱中开启SMTP服务: 这点很关键,别忘了去开启SMTP, 别忘了去开启SMTP,否则邮件是无法发送成功的...然后你还需要点击下面生成授权码,这个授权码才是使用Python发送邮件时的真正密码。...2.python发邮件需要掌握两个模块 smtplib和email,这俩模块是python自带的,只需import即可使用。smtplib模块主要负责发送邮件,email模块主要负责构造邮件。...代码说明: 1)smtplib模块 smtplib.SMTP() :实例化SMTP() login(user,password): user:登录邮箱的用户名。...,msg.as_string()) smtp.quit() print("邮件发送成功") except smtplib.SMTPException: print("无法发送邮件") 3、发送带附件的邮件
/usr/bin/python # -*- coding: utf-8 -*- import sys def smtp(title,file): import smtplib from .../usr/bin/python # -*- coding: UTF-8 -*- import smtplib import datetime from email.mime.text import MIMEText.../usr/bin/env python #_*_coding:utf-8 _*_ __author__ = 'gaogd' import smtplib import string ''' 实现图文格式的服务器性能报表邮件.../usr/bin/env python #_*_coding:utf-8 _*_ __author__ = 'gaogd' import smtplib from email.mime.text import.../usr/bin/env python #_*_coding:utf-8 _*_ __author__ = 'gaogd' import smtplib from email.mime.multipart
参考代码 # coding=utf-8 #1.先设置编码,utf-8可支持中英文,如上,一般放在第一行 #2.注释:包括记录创建时间,创建人,项目名称。...: smtp = smtplib.SMTP_SSL(smtpserver, port) smtp.login(sender, password) # 登录 smtp.sendmail...(sender, receiver, msg.as_string()) # 发送 smtp.quit() # #发送邮件 # smtp = smtplib.SMTP()...sendmail查源码,python/lib/smtplib.py大概690行左右,或者搜索tolist。...2、在使用python添加附件发送时报错:Cannot attach additional subparts to non-multipart/* 查询得知,错误的原因在于缺少这行代码: msg =
上一篇 【测试开发】python系列教程:array库 这次我们分享python的smtplib库 ---- SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议...python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。...Python创建 SMTP 对象语法如下: import smtplib smtpObj = smtplib.SMTP([host [, port [, local_hostname]]]) 参数说明...['Subject'] = Header(subject, 'utf-8') try: smtpObj = smtplib.SMTP() smtpObj.connect(mail_host...' message['Subject'] = Header(subject, 'utf-8') try: smtpObj = smtplib.SMTP() smtpObj.connect
领取专属 10元无门槛券
手把手带您无忧上云