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. redis —主从&&集群(CLUSTER)

    REDIS主从配置 为了节省资源,本实验在一台机器进行.即,在一台机器上启动两个端口,模拟两台机器. 机器准备: [root@adailinux ~]# cp /etc/redis.conf /etc ...

  2. ansible实践2-拷贝文件或目录

      ansible testhost -m copy -a "src=/etc/ansible  dest=/tmp/ansibletest owner=root group=root mo ...

  3. 【Unity3D技术文档翻译】第1.0篇 AssetBundles

    前言 "Unity圣典"是目前对官方文档翻译比较详细的,然而文档的最新更新日期是2013年,已经远远落后最新版本,参考意义有限.官方文档.脚本手册是学习Unity3D最直接有效的途 ...

  4. 菜鸟之旅——.NET垃圾回收机制

    .NET的垃圾回收机制是一个非常强大的功能,尽管我们很少主动使用,但它一直在默默的在后台运行,我们仍需要意识到它的存在,了解它,做出更高效的.NET应用程序:下面我分享一下我对于垃圾回收机制(GC)的 ...

  5. $.ajax的一些坑啊

    1.如果发送ajax返回的数据为json务必设置其 Content-Type:application/json;charset=UTF-8 不然会导致其success:function(data)中的 ...

  6. Java数字签名——DSA算法

    RSA数字加密算法参考:http://www.cnblogs.com/LexMoon/p/javaRSA.html DSS: 数字签名标准 DSA: 数字签名算法 DSA仅仅包含数字签名 —————— ...

  7. DLL文件修复

    当你在Windows计算机中安装非操作系统的软件时,往往会覆盖或改写系统共享文件, 如动态链接库(.dll文件)和可执行文件(.exe文件). * 对于Windows系统来说,当用户操作不当(如非正常 ...

  8. HDU - 3567 IDA* + 曼哈顿距离 + 康托 [kuangbin带你飞]专题二

    这题难度颇大啊,TLE一天了,测试数据组数太多了.双向广度优先搜索不能得到字典序最小的,一直WA. 思路:利用IDA*算法,当前状态到达目标状态的可能最小步数就是曼哈顿距离,用于搜索中的剪枝.下次搜索 ...

  9. java网络编程(2)——UDP与TCP

    首先,先介绍这两种协议: UDP:UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互 ...

  10. Spring MVC处理(下周完善)

    http://www.cnblogs.com/xiepeixing/p/4244574.html http://blog.csdn.net/kobejayandy/article/details/12 ...