Python发送手机动态验证码代码实例
作者:yaominghui 发布时间:2021-10-18 23:42:32
标签:Python,手机,动态,验证码
一、准备短信发送平台
首先进入http://user.ihuyi.com/nav/sms.html互亿天线,并且注册,进入首页
注册后会免费送50条消息
注册完后进入验证码通知短信,复制自己的api接口信息,apiid和apikey。并且保存
然后点击右上角的文档中心,进入后下载api文档
下载后为一个压缩包,解压。解压之后进入文件夹打开DEMO文件夹。里面为各种脚本语言实现发送短信的样本
找到python文本,直接打开可能会出现乱码,选择用记事本打开,然后全部copy到py文件中
二、修改py文件
修改的代码如下:
# 接口类型:互亿无线触发短信接口,支持发送验证码短信、订单通知短信等。
# 账户注册:请通过该地址开通账户http://sms.ihuyi.com/register.html
# 注意事项:
# (1)调试期间,请用默认的模板进行测试,默认模板详见接口文档;
# (2)请使用APIID(查看APIID请登录用户中心->验证码短信->产品总览->APIID)及 APIkey来调用接口;
# (3)该代码仅供接入互亿无线短信接口参考使用,客户可根据实际需要自行编写;
# !/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 = "xxxxxxx"
# 密码 查看密码请登录用户中心->验证码短信->产品总览->APIKEY
password = "xxxxxxxxxxxxxxxx"
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 = "13111111111"
text = "您的验证码是:121254。请不要把验证码泄露给其他人。"
print(send_sms(text, mobile))
三、发送随机验证码
利用python中random发送随机的6位验证码,只需在执行的时候加上生成随机6位数
if __name__ == '__main__':
x = random.randint(100000,999999) # 生成大于等于100000小于等于999999的一个数
print(x)
mobile = "xxxxxxx"
text = "您的验证码是:" + str(x) + "。请不要把验证码泄露给其他人。" # 将整型x转为字符串型并且发送
print(send_sms(text, mobile))
来源:https://www.cnblogs.com/tynam/p/8757966.html


猜你喜欢
- 1、Git本地版本库结构如下图所示:工作区(Working Directory)添加、编辑、修改、删除文件等操作。暂存区(Stage)打算提
- 通过Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案。主要原因是有些论文打印出是黑白色的,不同类别
- 有部分老项目是在Eclipse环境开发的,最近公司要求应用瘦身,老项目也在其中。如果在 AS 下开发就不会有这样的问题,但是在 Eclips
- 一、安装对应包在Pycharm的Terminal终端中输入pip install virtualenv,创建一个引入新的虚拟环境的条件。二、
- 我们有时候会批量处理同一个文件夹下的文件,并且希望读取到一个文件里面便于我们计算操作。比方我有下图一系列的txt文件,我该如何把它们写入一个
- Vue URL转跳与参数传递写业务中,从一个页面跳转到另一个页面,经常需要传值和取值,如何实现?1.通过router-link进行跳转使用q
- Javascript 正常取来源网页的URL只要用: document.referrer就可以了!但,如果来源页是Jav
- 一个已知管用的方法是,使用session_set_save_handler,接管所有的session管理工作,一般是把session信息存储
- 前言本文主要给大家介绍了关于python中Numpy和Pandas使用的相关资料,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介
- NumPy矩阵乘法矩阵乘法是将两个矩阵作为输入值,并将 A 矩阵的行与 B 矩阵的列对应位置相乘再相加,从而生成一个新矩阵,如下图所示:注意
- numpy中的乘法A = np.array([[1, 2, 3], [2, 3, 4]])B = np.array([[1, 0, 1],
- 与其它大多数语言一样,Python 也拥有 for 循环。你到现在还未曾看到它们的唯一原因就是,Python 在其它太多的方面表现出色,通常
- ASP开发中有用的函数(function)集合,挺有用的,请大家保留!'******************************
- 最近在看《Effective Python》,里面提到判断字符串或者集合是否为空的原则,原文如下:Don't check for e
- 使用场景我有两个GPU卡。我希望我两个GPU能并行运行两个网络模型。代码错误代码1:#对于0号GPUos.environ['CUDA
- 废话不多说啦,直接看代码吧!tf.concatt1 = [[1, 2, 3], [4, 5, 6]]t2 = [[7, 8, 9], [10
- 1,在Python中将integer数转化为罗马数说明:在罗马数中(3999以内),和阿拉伯数字相似,可以把它分解为个位,十位,百位,千位,
- 本文介绍在Python环境中,实现随机森林(Random Forest,RF)回归与各自变量重要性分析与排序的过程。其中,关于基于MATLA
- 本文实例讲述了Python使用微信SDK实现的微信支付功能。分享给大家供大家参考,具体如下:最近一段时间一直在搞微信平台开发,v3.37版本
- 自适应线性神经网络Adaptive linear network, 是神经网络的入门级别网络。相对于感知器,采用了f(z)=z的激活函数,属