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解释执行原理分析
Aug 22 Python
Python编程中的异常处理教程
Aug 21 Python
基于python 爬虫爬到含空格的url的处理方法
May 11 Python
解决pycharm运行时interpreter为空的问题
Oct 29 Python
为什么你还不懂得怎么使用Python协程
May 13 Python
在python中画正态分布图像的实例
Jul 08 Python
Python实现隐马尔可夫模型的前向后向算法的示例代码
Dec 31 Python
Python3开发实例之非关系型图数据库Neo4j安装方法及Python3连接操作Neo4j方法实例
Mar 18 Python
python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)
Apr 08 Python
Python MOCK SERVER moco模拟接口测试过程解析
Apr 13 Python
python中的被动信息搜集
Apr 29 Python
pytorch finetuning 自己的图片进行训练操作
Jun 05 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
轻松修复Discuz!数据库
2008/05/03 PHP
Drupal7连接多个数据库及常见问题解决
2014/03/02 PHP
php使用pdo连接mssql server数据库实例
2014/12/25 PHP
全面解读PHP的Yii框架中的日志功能
2016/03/17 PHP
利用php-cli和任务计划实现刷新token功能的方法
2017/05/03 PHP
js 动态文字滚动的例子
2011/01/17 Javascript
js实现鼠标拖动图片并兼容IE/FF火狐/谷歌等主流浏览器
2013/06/06 Javascript
js如何实现设计模式中的模板方法
2013/07/23 Javascript
实例讲解javascript注册事件处理函数
2016/01/09 Javascript
DIV随滚动条滚动而滚动的实现代码【推荐】
2016/04/12 Javascript
全面解析jQuery $(document).ready()和JavaScript onload事件
2016/06/08 Javascript
jQuery.parseHTML() 函数详解
2017/01/09 Javascript
ionic中列表项增加和删除的实现方法
2017/01/22 Javascript
angular directive的简单使用总结
2017/05/24 Javascript
js 提取某()特殊字符串长度的实例
2017/12/06 Javascript
浅谈PDF.js使用心得
2018/06/07 Javascript
Vue数字输入框组件使用方法详解
2020/02/10 Javascript
返回上一个url并刷新界面的js代码
2020/09/12 Javascript
[03:14]辉夜杯主赛事 12月25日每日之星
2015/12/26 DOTA
Atom的python插件和常用插件说明
2018/07/08 Python
详解Django中类视图使用装饰器的方式
2018/08/12 Python
python之super的使用小结
2018/08/13 Python
python 工具 字符串转numpy浮点数组的实现
2020/03/14 Python
CSS实现的一闪而过的图片闪光效果
2014/04/23 HTML / CSS
Fanatics官网:运动服装、球衣、运动装备
2020/10/12 全球购物
Servlet的生命周期
2013/08/25 面试题
学院书画协会部门职责
2013/11/28 职场文书
化学教师教学反思
2014/01/17 职场文书
大学信息公开实施方案
2014/03/09 职场文书
营销团队口号
2014/06/06 职场文书
工作总结之小学教师体育工作范文(3篇)
2019/10/07 职场文书
python实现A*寻路算法
2021/06/13 Python
Redis缓存-序列化对象存储乱码问题的解决
2021/06/21 Redis
Mysql排序的特性详情
2021/11/01 MySQL
Vue监视数据的原理详解
2022/02/24 Vue.js
聊聊配置 Nginx 访问与错误日志的问题
2022/05/25 Servers