Python3实现发送邮件和发送短信验证码功能


Posted in Python onJanuary 07, 2020

 Python3实现发送邮件:

import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
my_sender = '1434399884@qq.com' # 发件人邮箱账号
my_pass = '*********' # 发件人邮箱的授权码
my_user = '3152609963@qq.com' # 收件人邮箱账号,我这边发送给自己
def mail():
 ret= True
 try:
  msg = MIMEText('验证码为:123456', 'plain', 'utf-8')
  msg['From'] = formataddr(["From nicead.top", my_sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号
  msg['To'] = formataddr(["FK", my_user]) # 括号里的对应收件人邮箱昵称、收件人邮箱账号
  msg['Subject'] = "验证码" # 邮件的主题,也可以说是标题
  server = smtplib.SMTP_SSL("smtp.qq.com", 465) # 发件人邮箱中的SMTP服务器,端口是25
  server.login(my_sender, my_pass) # 括号中对应的是发件人邮箱账号、邮箱密码
  server.sendmail(my_sender, [my_user, ], msg.as_string()) # 括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件
  server.quit() # 关闭连接
 except Exception as e: # 如果 try 中的语句没有执行,则会执行下面的ret=False
  ret = False
 return ret
ret = mail()
if ret:
 print("邮件发送成功")
else:
 print("邮件发送失败")

注意授权码:需要在邮件中的设置中获取,如QQ邮箱获取授权码的方法:

Python3实现发送邮件和发送短信验证码功能

Python3实现发送邮件和发送短信验证码功能

Python3实现发送邮件和发送短信验证码功能

 Python3实现短信验证码 

# 接口类型:互亿无线触发短信接口,支持发送验证码短信、订单通知短信等。
# 账户注册:请通过该地址开通账户http://sms.ihuyi.com/register.html
# 注意事项:
# (1)调试期间,请使用用系统默认的短信内容:您的验证码是:【变量】。请不要把验证码泄露给其他人。;
# (2)请使用APIID(查看APIID请登录用户中心->验证码短信->产品总览->APIID)及 APIkey来调用接口;
# (3)该代码仅供接入互亿无线短信接口参考使用,客户可根据实际需要自行编写;
#发送短信
#APIID:C11345804
#APIKEY:735d183ae02189f678c26800ac19b03a
# !/usr/local/bin/python
# -*- coding:utf-8 -*-
import http.client
import urllib
host = "106.ihuyi.com"
sms_send_uri = "/webservice/sms.php?method=Submit"
# 用户名是登录用户中心->验证码短信->产品总览->APIID
account = "************"
# 密码 查看密码请登录用户中心->验证码短信->产品总览->APIKEY
password = "**********************"
def send_sms(text, mobile):
 params = urllib.parse.urlencode(
  {'account': account, 'password': password, 'content': text, 'mobile': mobile, 'format': 'json'})
 headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
 conn = http.client.HTTPConnection(host, port=80, timeout=30)
 conn.request("POST", sms_send_uri, params, headers)
 response = conn.getresponse()
 response_str = response.read()
 conn.close()
 return response_str
if __name__ == '__main__':
 #需要接受短信的目标手机号
 mobile = "手机号"
#短信内容
 text = "您的验证码是:121254。请不要把验证码泄露给其他人。"
 ret = send_sms(text, mobile).decode('utf-8')
 import json
 ret = json.loads(ret)
 print(ret)

 注意:

# 用户名是登录用户中心->验证码短信->产品总览->APIID
account = "************"
# 密码 查看密码请登录用户中心->验证码短信->产品总览->APIKEY
password = "**********************"

需要在互亿无线触发短信接口的官网注册一个账号,会提供免费发送十次短信验证码。http://sms.ihuyi.com/register.html

总结

以上所述是小编给大家介绍的Python3实现发送邮件和发送短信验证码功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
在Python中使用异步Socket编程性能测试
Jun 25 Python
Python学习之asyncore模块用法实例教程
Sep 29 Python
python单元测试unittest实例详解
May 11 Python
Windows下Python的Django框架环境部署及应用编写入门
Mar 10 Python
python获取url的返回信息方法
Dec 17 Python
Python同步遍历多个列表的示例
Feb 19 Python
Python计算时间间隔(精确到微妙)的代码实例
Feb 26 Python
在Django admin中编辑ManyToManyField的实现方法
Aug 09 Python
自定义实现 PyQt5 下拉复选框 ComboCheckBox的完整代码
Mar 30 Python
keras 模型参数,模型保存,中间结果输出操作
Jul 06 Python
Python特殊属性property原理及使用方法解析
Oct 09 Python
python爬虫调度器用法及实例代码
Nov 30 Python
Python模块的定义,模块的导入,__name__用法实例分析
Jan 07 #Python
python 微信好友特征数据分析及可视化
Jan 07 #Python
Python打开文件、文件读写操作、with方式、文件常用函数实例分析
Jan 07 #Python
Python装饰器原理与基本用法分析
Jan 07 #Python
python保留小数位的三种实现方法
Jan 07 #Python
pytorch之ImageFolder使用详解
Jan 06 #Python
pytorch之inception_v3的实现案例
Jan 06 #Python
You might like
PHP 循环删除无限分类子节点的实现代码
2013/06/21 PHP
php使用ob_flush不能每隔一秒输出原理分析
2015/06/02 PHP
7个鲜为人知却非常实用的PHP函数
2015/07/01 PHP
php实现向javascript传递数组的方法
2015/07/27 PHP
PHP消息队列用法实例分析
2016/02/12 PHP
php微信公众平台开发之微信群发信息
2016/09/13 PHP
JavaScript 在线压缩和格式化收藏
2009/01/16 Javascript
jquery获得option的值和对option进行操作
2013/12/13 Javascript
js中split函数的使用方法说明
2013/12/26 Javascript
js调试系列 断点与动态调试[基础篇]
2014/06/18 Javascript
js和jquery设置disabled属性为true使按钮失效
2014/08/07 Javascript
form.submit()不能提交表单的错误原因及解决方法
2014/10/13 Javascript
js中的事件捕捉模型与冒泡模型实例分析
2015/01/10 Javascript
跟我学习javascript的作用域与作用域链
2015/11/19 Javascript
深入理解jQuery3.0的domManip函数
2016/09/01 Javascript
dul无法加载bootstrap实现unload table/user恢复
2016/09/29 Javascript
jQuery选择器之子元素选择器详解
2017/09/18 jQuery
import与export在node.js中的使用详解
2017/09/28 Javascript
clipboard.js在移动端复制失败的解决方法
2018/06/13 Javascript
layui监听单元格编辑前后交互的例子
2019/09/16 Javascript
js刷新页面location.reload()用法详解
2019/12/09 Javascript
[01:26]神话结束了,却也刚刚开始——DOTA2新英雄玛尔斯驾临战场
2019/03/10 DOTA
python中partial()基础用法说明
2018/12/30 Python
python调用百度地图WEB服务API获取地点对应坐标值
2019/01/16 Python
用vue.js组件模拟v-model指令实例方法
2019/07/05 Python
Python实现生成密码字典的方法示例
2019/09/02 Python
python实现大量图片重命名
2020/03/23 Python
python使用pandas抽样训练数据中某个类别实例
2020/02/28 Python
Python导入模块包原理及相关注意事项
2020/03/25 Python
mac安装python3后使用pip和pip3的区别说明
2020/09/01 Python
几个CSS3的flex弹性盒模型布局的简单例子演示
2016/05/12 HTML / CSS
详解CSS3中nth-child与nth-of-type的区别
2017/01/05 HTML / CSS
详解H5本地储存Web Storage
2017/07/03 HTML / CSS
购买大码女装:Lane Bryant
2016/09/07 全球购物
恶意软件的定义
2014/11/12 面试题
《画家和牧童》教学反思
2016/02/17 职场文书