1 首先到mailgun官网注册账号,并激活账号

点击domains,进入默认的域名,最底下那个sandbox域名就是默认的测试域名

如果自己有域名,也可以添加自己的域名测试,具体参考:ssr panel魔改前端登陆面板配置邮件服务

前4步添加自己的域名

2 查看域名信息

3 添加测试账号,添加完之后,会受到确认邮件,点击确认之后就可以发送测试邮件

点击上面图片manage Authorized Recipients添加

这个时候进入邮箱确认

4 示例代码

# -*- coding=utf- -*-
import smtplib
import time
#from pymongo import MongoClient
from email.mime.text import MIMEText
"""
people
[{"id":"贝贝","address":"lghher1991@163.com"},{"id":"航航","address":"lghher1990@163.com"}]

email
{"sub":"标题","html":"<html><h1>贝贝</h1></html>"}
"""

def sendEmail(u_list,sub,content):
    smtp_host = 'smtp.mailgun.com'
    account = 'postmaster@sandbox34daf3c7c32248fb9ab29b5468216c7f.mailgun.org'
    password='3986a06d1a14ab1eb7d19b0a237dc408'
    msg = MIMEText(content,'html','utf-8')
    msg["Accept-Language"]="zh-CN"
    msg["Accept-Charset"]="ISO-8859-1,utf-8"
    msg['Subject']=sub
    msg['From']='sunland@126.com'
   # msg['To']=';'.join(u_list)
    msg['To']=(u_list)
    smtp = smtplib.SMTP(smtp_host)
    smtp.login(account,password)
    smtp.sendmail(account,u_list,msg.as_string())
    smtp.quit()
    print "发送成功".decode('utf-8').encode('mbcs')

user = 'ymnlwyy@sina.com'
sub = 'testmailgun'
content = 'hello mailgun'
sendEmail(user,sub,content)

打开vi 编辑器,复制上面代码,保存并运行代码

vi sendmail.py//复制代码 wq:保存

python sendmail.py 

如图,表示运行成功:

此时可以打开自己邮箱,查看发送的邮件

也可以在mailgun的log里面看到发送的邮件

错误汇总:

1  smtplib.SMTPAuthenticationError: (535, '5.7.0 Mailgun is not loving your login or password')

说明用户名(account)和密码(password)填写错误,请刷新domain页面查看密码,填入新的密码,在运行代码

2 smtplib.SMTPDataError: (554, 'Sandbox subdomains are for test purposes only. Please add your own domain or add the address to authorized recipients in Account Settings.')

说明没有添加测试账号,请回到步骤3添加测试邮箱后再运行代码

参考链接:读取mongodb利用mailgun发送邮件--python学习

mailgun 发邮件示例代码Python版的更多相关文章

  1. C# mailKit 发邮件 简单代码

    public static async Task<bool> SendMailAsync22(string Name, string receive, string sender, str ...

  2. 百度EasyDL文本分类自定义API示例代码 python

    因为需要将命名实体中的组织机构名进一步区分为政府.企业.社会组织等,在easydl上做了一个文本分类模型,但是要用这个接口时候发现, 官方文档中竟然还在用urllib2的库,且不完整.好多地方会报错, ...

  3. 【python】python 自动发邮件

    一.一般发邮件的方法 Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件. 注意到构造MIMETEXT对象时,第一个参数就是邮件正文,第 ...

  4. Python3.5 执行发邮件脚本失败【惑】==>【搞定】

    Python发邮件的代码如下: 只需要填写好加粗字体,即可正常使用. from exchangelib import DELEGATE, Account, Credentials, Message, ...

  5. Python3.5 执行发邮件Exchangelib(=)

    fyl Python发邮件的代码如下: 只需要填写好加粗字体,即可正常使用. from exchangelib import DELEGATE, Account, Credentials, Messa ...

  6. Java - JavaMail - 利用 JavaMail 发邮件的 小demo

    1. 概述 面试的时候, 被问到一些乱七八糟的运维知识 虽然我不是干运维的, 但是最后却告诉我专业知识深度不够, 感觉很难受 又回到了一个烦人的问题 工作没有深度的情况下, 你该如何的提升自己, 并且 ...

  7. python中关于发邮件的示例

    发送邮件示例代码如下: from WebUtils import ProperitiesLoad from email.mime.text import MIMEText from email.mim ...

  8. Python自动发邮件-yagmail库

    之前写过用标准库使用Python Smtplib和email发送邮件,感觉很繁琐,久了不用之后便忘记了.前几天看知乎哪些Python库让你相见恨晚?,看到了yagmail第三方库,学习过程中遇到一些问 ...

  9. Python自动发邮件——smtplib和email库和yagmail库

    ''' 一.先导入smtplib模块 导入MIMEText库用来做纯文本的邮件模板 二.发邮件几个相关的参数,每个邮箱的发件服务器不一样,以163为例子百度搜索服务器是 smtp.163.com 三. ...

随机推荐

  1. 【学习笔记】Hibernate 一对一关联映射 组件映射 二级缓存 集合缓存

    啊讲道理放假这十天不到啊 感觉生活中充满了绝望 这就又开学了 好吧好吧继续学习笔记?还是什么的 一对一关联映射 这次我们仍然准备了两个表 一个是用户表Users 一个是档案表Resume 他们的关系是 ...

  2. Java经典编程题50道之三十五

    有一个数组,将其最大的元素与第一个元素交换,最小的元素与最后一个元素交换,然后输出数组. public class Example35 {    public static void main(Str ...

  3. centos/linux下的安装mysql

    1.从yum 下面下载mysql数据库 yum -y install mysql-server 2.查询该mysql是否安装完成 rpm -qa|grep mysql-server 出现如下图所示标明 ...

  4. 机器学习之支持向量机(二):SMO算法

    注:关于支持向量机系列文章是借鉴大神的神作,加以自己的理解写成的:若对原作者有损请告知,我会及时处理.转载请标明来源. 序: 我在支持向量机系列中主要讲支持向量机的公式推导,第一部分讲到推出拉格朗日对 ...

  5. Android ADB Server启动失败

    启动Android Stdio的时候报如下错误: Unable to create Debug Bridge: Unable to start adb server: error: could not ...

  6. Docker mongodb 3.4 分片 一主 一副 一仲 鉴权集群部署.

    非docker部署 为了避免过分冗余,并且在主节点挂了,还能顺利自动提升,所以加入仲裁节点 为什么要用docker部署,因为之前直接在虚拟机启动10个mongod 进程.多线程并发测试的时候,mong ...

  7. mysql忘记密码解决的办法

    [很管用]忘记mysql root密码解决办法 1.编辑MySQL配置文件: 首先停止mysql服务, 然后开始编辑mysql配置文件:vi /etc/my.cnf在[mysqld]配置段添加如下一行 ...

  8. CEPH RGW 设置 user default_placement为ssd-placement,优化100KB-200KB小文件性能,使用户创建的bucket对象放置到 SSD设备的Pool上。

    sudo radosgw-admin metadata get user:tuanzi > user.md.json vi user.md.json #to add ssd-placement ...

  9. FFMpeg.H264解码win开发环境搭建

    开发环境: vc6.0 + sp5 + vcpp5,注意vcpp5在vc6+sp6上会安装失败. 源码: ff_264_dec_vc,可用vc进行编译调试,但编译环境限定如上. 声明:该工程是ffmp ...

  10. PCI、CPCI、CPCIE 区别、特点

    PCI.CPCI.CPCIE 区别.特点 CPCI总线 •PCI总线作为处理器系统的局部总线,主要目的是为了连接外部设备,而不是作为处理器的系统总线连接Cache和主存储器 •(1) PCI总线空间与 ...