一、准备短信发送平台

首先进入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 = "
     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))

python发送手机动态验证码的更多相关文章

  1. python发送短信验证码

    业务: 手机端点击发送验证码,请求发送到python端,由python调用第三方平台(我们使用的是榛子云短信http://smsow.zhenzikj.com)的短信接口,生成验证码并发送. SDK下 ...

  2. python抓取动态验证码,具体第几帧数的位置静态图片

    一.代码+注解 import os from PIL import Image import requests import io def save_img(): headers = { 'User- ...

  3. Python使用腾讯云-短信服务发送手机短信

    目前[腾讯云短信]为客户提供[国内短信].[国内语音]和[海外短信]三大服务,腾讯云短信SDK支持以下操作: 国内短信 国内短信支持操作: • 指定模板单发短信 • 指定模板群发短信 • 拉取短信回执 ...

  4. asp.net限时发送手机验证码

    html代码 <p> <strong>手机验证码:</strong> <asp:TextBox ID="code" runat=" ...

  5. C#发送手机验证码

    C#发送手机验证码,平台有很多,我就说说其中的1个平台 测试环境:.net2.0 测试效果:速度还可以,10秒内接收短信 1.去http://www.yuntongxun.com注册,会送8元测试金额 ...

  6. django 发送手机验证码

    一.流程分析: 1.用户在项目前端,输入手机号,然后点击[获取验证码],将手机号发到post到后台. 2.后台验证手机号是否合法,是否已被占用,如果通过验证,则生成验证码,并通过运行脚本,让短信运营商 ...

  7. Java实现发送手机验证码功能(短信+语音)

    利用第三方平台可以实现发送手机短信验证码和语音验证码的功能,本文使用框架是struts2+spring+hibernate,现就action层给出核心代码功能. public class Verify ...

  8. Asp.Net发送手机验证码

    C#发送手机验证码,平台有很多,我就说说其中的1个平台 测试环境:.net2.0 测试效果:速度还可以,10秒内接收短信 1.去http://www.yuntongxun.com注册,会送8元测试金额 ...

  9. Java 实现手机发送短信验证码

    Java 实现手机发送短信验证码 采用引入第三方工具的方式,网上查了半天,发现简单的实现方式便是注册一个中国网建的账号,新建账号的时候会附带赠几条免费短信,彩信 ,之后想要在使用就得花钱了.简单的操作 ...

随机推荐

  1. 如何在服务器上配置ODBC来访问本机DB2 for Windows服务器

    如何在服务器上配置ODBC来访问本机 DB2 for Windows服务器                         马根峰             (广东联合电子服务股份有限公司, 广州 51 ...

  2. ruby中顶层定义的方法究竟放在哪里?

    ruby中顶层(top level)中定义的方法放在main中,证明如下: self.private_methods(false) #IN TOP LEVEL 那么methods方法究竟是在哪定义的, ...

  3. rails将类常量重构到数据库对应的表中之二

    在博文之一中我们将Order中的常量重构到了数据库的表中,也做了一些测试,貌似一切都很完美.可是...梦魔还未开始啊!我们少做了一步测试,就是rake test! 结果惨不忍睹,所有测试都是E,全部出 ...

  4. scrollWidth,clientWidth与offsetWidth的区别

    scrollWidth  是对象的实际内容的宽,不包边线宽度,会随对象中内容的多少改变(内容多了可能会改变对象的实际宽度). clientWidth  是对象可见的宽度,不包滚动条等边线,会随窗口的显 ...

  5. Thinkphp3.2简单解决多文件上传只上传一张的问题

    html简单页面: index.html代码: <form action="{:U('index/upload')}" method="post" enc ...

  6. 【CloverETL培训】题目

    具体要求: 导入: 1.在CRM中,创建相应物理表,存储Follow/Binding记录.openid作为逻辑主键 2.Follow/Binding导入相互不影响,一个失败另外一个继续执行 3.Fol ...

  7. 新装的主机没有ifconfig,route等命令,怎么查找对应的安装包

    公司最近有台新装的主机,主机上一些常用的命令都没有,比如说ifconfig,route等命令. 没有这些命令主机很难工作,所以我们就需要把他安装上 第一种方法:是你需要知道对应的是那个包 比如说ifc ...

  8. Spring消息之STOMP

    一.STOMP 简介 直接使用WebSocket(或SockJS)就很类似于使用TCP套接字来编写Web应用.因为没有高层级的线路协议(wire protocol),因此就需要我们定义应用之间所发送消 ...

  9. 用尽洪荒之力学习Flask源码

    WSGIapp.run()werkzeug@app.route('/')ContextLocalLocalStackLocalProxyContext CreateStack pushStack po ...

  10. JVM学习记录-垃圾回收算法

    简述 因为各个平台的虚拟机的垃圾收集器的实现各有不同,所以只介绍几个常见的垃圾收集算法. JVM中常见的垃圾收集算法有以下四种: 标记-清除算法(Mark-Sweep). 复制算法(Copying). ...