一、准备短信发送平台

首先进入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. LDA

    2 Latent Dirichlet Allocation Introduction LDA是给文本建模的一种方法,它属于生成模型.生成模型是指该模型可以随机生成可观测的数据,LDA可以随机生成一篇由 ...

  2. Android实训案例(五)——四大组件之一ContentProvider的使用,通讯录的实现以及ListView的优化

    Android实训案例(五)--四大组件之一ContentProvider的使用,通讯录的实现 Android四大组件是啥这里就不用多说了,看图吧,他们之间通过intent通讯 我们后续也会一一的为大 ...

  3. 是我out了,c11标准出炉鸟

    gcc -std=c11 -Wall -O3 -g0 -s -o x.c x 或者 clang -std=c11 -Wall -O3 -g0 -s -o x.c x 来吧! 我是有多无聊啊 测试代码: ...

  4. Jedis对Redis的常用命令操作

    本篇主要总结一些Jedis对Redis的常用命令操作: 1.对key操作命令 2.对String操作命令 3.对List操作命令 4.对Set操作命令 5.对Hash操作命令 6.排序操作指令 一.项 ...

  5. cookie的增删改查函数

    function setCookie(name,value,expires,path,domain){ //设置过期时间 var oDate = new Date(); oDate.setDate(o ...

  6. java程序的内存分配(一)

      首 页 阅览室 馆友 我的图书馆 帐号 java程序的内存分配(一) 收藏  JAVA 文件编译执行与虚拟机(JVM)介绍  Java 虚拟机(JVM)是可运行Java代码的假想计算机.只要根据J ...

  7. java设计模式--单列模式

    java设计模式--单列模式 单列模式定义:确保一个类只有一个实例,并提供一个全局访问点. 下面是几种实现单列模式的Demo,每个Demo都有自己的优缺点: Demo1: /** * 单列模式需要满足 ...

  8. docker的安装和技巧

    工作了有一段时间,开发环境中需要docker环境,但是docker一直不算很熟,之前一直是利用yum安装,但是yum安装真的很费劲,所以总结了一些经验给大家: 1,利用yum直接安装 官网是直接给了y ...

  9. View requires API level 14 (current min is 8): <GridLayout>

    在学习android的过程中,出现这个错误的是否,可以build clean解决

  10. .net core2.0通过entityframework访问Sqlserver数据库

    .net core经历2.0版本之后,已经非常稳定,完全可以进行企业级开发并跨平台部署到几乎任何服务器.个人测试效率是.net core是.net framework效率的3倍.其他语言没有测试,等测 ...