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算法应用实战之栈详解
Feb 04 Python
Python方法的延迟加载的示例代码
Dec 18 Python
Python yield与实现方法代码分析
Feb 06 Python
django 删除数据库表后重新同步的方法
May 27 Python
Django中日期处理注意事项与自定义时间格式转换详解
Aug 06 Python
python+selenium 定位到元素,无法点击的解决方法
Jan 30 Python
python科学计算之scipy——optimize用法
Nov 25 Python
Anaconda+Pycharm环境下的PyTorch配置方法
Mar 13 Python
Python如何把Spark数据写入ElasticSearch
Apr 18 Python
python输入中文的实例方法
Sep 14 Python
Python使用内置函数setattr设置对象的属性值
Oct 16 Python
python中@contextmanager实例用法
Feb 07 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
PHP4与PHP3中一个不兼容问题的解决方法
2006/10/09 PHP
php正则取img标记中任意属性(正则替换去掉或改变图片img标记中的任意属性)
2013/08/13 PHP
php文件上传的例子及参数详解
2013/12/12 PHP
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
Swoole 5将移除自动添加Event::wait()特性详解
2019/07/10 PHP
jQuery each()方法的使用方法
2010/03/18 Javascript
js有序数组的连接问题
2013/10/01 Javascript
jQuery热气球动画半透明背景的后台登录界面代码分享
2015/08/28 Javascript
js老生常谈之this,constructor ,prototype全面解析
2016/04/05 Javascript
逻辑表达式中与或非的用法详解
2016/06/06 Javascript
jQuery、zepto、js常用小技巧
2017/02/12 Javascript
js实现图片旋转 js滚动鼠标中间对图片放大缩小
2017/07/05 Javascript
JS随机排序数组实现方法分析
2017/10/11 Javascript
浅谈Angular 的变化检测的方法
2018/03/01 Javascript
jQuery实现下拉菜单动态添加数据点击滑出收起其他功能
2018/06/14 jQuery
Vue resource三种请求格式和万能测试地址
2018/09/26 Javascript
layui异步加载table表中某一列数据的例子
2019/09/16 Javascript
vue-dplayer 视频播放器实例代码
2019/11/08 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
2019/12/22 Javascript
详解Nuxt内导航栏的两种实现方式
2020/04/16 Javascript
详解Vue2的diff算法
2021/01/06 Vue.js
[02:20]DOTA2亚洲邀请赛 IG战队出场宣传片
2015/02/07 DOTA
[46:04]Liquid vs VP Supermajor决赛 BO 第四场 6.10
2018/07/05 DOTA
Python简单生成随机姓名的方法示例
2017/12/27 Python
一个月入门Python爬虫学习,轻松爬取大规模数据
2018/01/03 Python
python实现遍历文件夹修改文件后缀
2018/08/28 Python
使用Python实现牛顿法求极值
2020/02/10 Python
TensorFlow的环境配置与安装教程详解(win10+GeForce GTX1060+CUDA 9.0+cuDNN7.3+tensorflow-gpu 1.12.0+python3.5.5)
2020/06/22 Python
call在Python中改进数列的实例讲解
2020/12/09 Python
HTML5仿微信聊天界面、微信朋友圈实例代码
2018/01/29 HTML / CSS
Lowe’s加拿大:家居装修、翻新和五金店
2019/12/06 全球购物
致跳高运动员加油稿
2014/02/12 职场文书
社区网格化管理实施方案
2014/03/21 职场文书
受伤赔偿协议书
2014/09/24 职场文书
MySQL索引失效的典型案例
2021/06/05 MySQL
JavaScript实现简单计时器
2021/06/22 Javascript