注明:邮箱如果发送失败,则会报错,可以使用异常处理来检测邮件是否会发送失败

常用SMTP地址

1、QQ邮箱(mail.qq.com)

POP3服务器地址:pop.qq.com(端口:110)

SMTP服务器地址:smtp.qq.com(端口:25)

2、搜狐邮箱(sohu.com):

POP3服务器地址:pop3.sohu.com(端口:110)

SMTP服务器地址:smtp.sohu.com(端口:25)

3、HotMail邮箱(hotmail.com):

POP3服务器地址:pop.live.com(端口:995)

SMTP服务器地址:smtp.live.com(端口:587)

4、移动139邮箱:

POP3服务器地址:POP.139.com(端口:110)

SMTP服务器地址:SMTP.139.com(端口:25)

5、景安网络邮箱:

POP3服务器地址:POP.zzidc.com(端口:110)

SMTP服务器地址:SMTP.zzidc.com(端口:25)

本博客转自https://www.jianshu.com/p/29ced38b5183?utm_campaign=haruki&utm_content=note&utm_medium=reader_share&utm_source=qq

电子邮件
python发送电子邮件时,使用标准库中的smtplib和email,smptlib中有一个SMTP类,需要发送邮件时,初始化该类返回smtpserver对象,使用login登陆MUA,使用sendmail方法发送邮件,邮件的正文用email.mime.text.MIMEText对象进行描述
简单电子邮件发送程序

from email.mime.text import MIMEText
msg = MIMEText('hello message','plain', 'utf-8')
from_addr = 'yourPhone@163.com'
to_addr = 'yourQQ@qq.com'
sub_msg = 'hello'
smtp_server = 'smtp.163.com'
import smtplib
# 初始化smtp对象,传入服务器地址与端口号
server = smtplib.SMTP(smtp_server,25)
# 设置调试模式可以让我们看到发送邮件过程中的信息
server.set_debuglevel(1)
# 登陆MUA,使用账户与授权码登陆
server.login(from_addr, 'yourpassword')
msg['From'] = from_addr
msg['To'] = to_addr
msg['Subject'] = 'important message'
server.sendmail(from_addr, [to_addr], msg.as_string())

邮件被放入垃圾邮件中,如下

发送带附件的电子邮件

 from email.mime.text import MIMETextfrom smtplib import SMTPfrom email.mime.multipart import MIMEMultipartfrom_addr = '18392136027@163.com'to_addr = '1786614260@qq.com'smtp_server = 'smtp.163.com'smtp_port = 25subject_msg = 'subject'mul_msg = MIMEMultipart()mul_msg['From'] = from_addrmul_msg['To'] = to_addrmul_msg['Subject'] = subject_msgmsg = MIMEText('\n\rimportant message\n\r', 'plain', 'utf-8')mul_msg.attach(msg)att1 = MIMEText(open('program.txt','rb').read(), 'base64', 'utf-8')att1['Content-Type'] = 'application/octet-stream'att1["Content-Disposition"] = 'attachment;filename="program.txt"'mul_msg.attach(att1)smtp = SMTP(smtp_server, smtp_port)smtp.login(from_addr, 'youpass')smtp.set_debuglevel(1)smtp.sendmail(from_addr, to_addr, mul_msg.as_string())smtp.close()

使用第三方开源库yagmail发送电子邮件

import yagmail
yag = yagmail.SMTP(user='youQQ@qq.com', password='you pass', host='smtp.qq.com', port=25)
contents = ['import message','program.txt']
yag.send(to='dest', subject='subject', contents=contents)

使用pop3协议用网易邮箱发送邮件时,容易被网易识别为垃圾邮件,可以使用qq邮箱

python如何实现电子邮件的发送相关推荐

  1. 自学Python 64 使用Python语言收发电子邮件

    Python 使用Python语言收发电子邮件 文章目录 Python 使用Python语言收发电子邮件 一.开发POP3邮件程序 1.类 2.方法 二.开发SMTP邮件程序   自从互联网诞生那一刻 ...

  2. 利用python发送邮件_利用python实现简单的邮件发送客户端示例

    脚本过于简单,供学习和参考.主要了解一下smtplib库的使用和超时机制的实现.使用signal.alarm实现超时机制. #!/usr/bin/env python # -*- coding: ut ...

  3. python实现邮件客户端_利用python实现简单的邮件发送客户端示例

    脚本过于简单,供学习和参考.主要了解一下smtplib库的使用和超时机制的实现.使用signal.alarm实现超时机制. #!/usr/bin/env python # -*- coding: ut ...

  4. 利用Python定时给女友微信发送今日天气情况,异地恋维护感情神器

    前言 在我们生活当中,有许多的×××姐和小哥哥都是出于异地恋的状态. 所以进群:839383765 可以获取各类Python入门学习资料+视频资料+在线直播教学! 我为你翻山越岭,却无心看风景.在她感 ...

  5. python使用企业微信机器人发送测试报告

    自从企业微信添加了群机器人功能,我们现在使用机器人发送测试报告,最开始使用的是文本类型,但是感觉没有markdown的显示好看,索性就更换成了markdown类型的 官网上介绍的还可以发送图片和图文等 ...

  6. 利用python库twilio来免费发送短信

    利用python库twilio来免费发送短信 twilio介绍 Twilio是一个做成开放插件的电话跟踪服务(call-tracking service).美国当地时间2016年6月23日,云通讯公司 ...

  7. python实现由通知接口发送企业微信通知

    python实现由通知接口发送企业微信通知 问题背景 要点说明 1. 请求接口鉴权并返回token值 2.请求通知接口发送企业微信通知 3.通知内容中传入参数 问题背景 项目中需要通过 python ...

  8. PHP邮件功能无法完成电子邮件的发送

    本文翻译自:PHP mail function doesn't complete sending of e-mail <?php$name = $_POST['name'];$email = $ ...

  9. Python每天定时给你发送天气预报和笑话

    python每天定时发送天气预报和笑话 你是否有时出门后被冻成狗时,后悔没有看天气预报多穿条秋裤,是否有时工作劳累之余,没有笑话让你乐呵一下.就现在开始,让Python每天定时给你发送天气预报和笑话, ...

最新文章

  1. Java多线程闲聊(一):概论
  2. 【毕业求职季】-听说你想去大厂看学妹,教你京东软件产品经理面试如何一把过
  3. 通俗易懂的最长回文串图解、说明及Java代码(中心扩散法和Manacher算法)
  4. gulp前端构建化工具,帮你搞定不同浏览器的兼容性写法问题
  5. 如何在论文中自动生成标准的参考文献格式
  6. loardrunner- 集合点函数设置
  7. redis value最大值_Redis基础知识整理
  8. 计算机放大电路的基础知识,集成运算放大器基础知识及示例电路
  9. 雷达基础系列文章之四:雷达专业国内期刊
  10. 1324. Print Words Vertically**
  11. hdu 1680 Cheesy Chess
  12. 计算机组成原理学习笔记——机器指令的基本结构
  13. 实用的自然码双拼口诀
  14. 摄影测量期末复习cumt
  15. android微信分享大图长图,裁剪微信分享缩略图片(长缩略图取中裁剪)
  16. Caused by: java.lang.IllegalArgumentException的解决方法
  17. 关于AI测试与评价的讨论
  18. C语言实验——时间间隔(java)
  19. 干货|对于软件产品质量的一些思考
  20. 区块链游戏的抢滩之战

热门文章

  1. Python正面硬刚C语言,结果会怎样?
  2. 三、Android系统内核编译及刷机实战 (修改反调试标志位)
  3. Spark SQL增量查询Hudi表
  4. 2022-2028全球与中国制粒机市场现状及未来发展趋势
  5. 2016年全国高中数学联赛加试T4分析
  6. Cesium 获取当前屏幕范围内的中心点以及相机姿态
  7. 老师教我们用计算机画画就是彩虹,上海一年级语文课文
  8. 找回知之阅读笔记的方法
  9. python爬虫找漫画出现断章?那你就得看这篇爬虫思想教学咯!
  10. 解决微信小程序录制视频存在的问题