• python发送手机动态验证码


    一、准备短信发送平台

    首先进入http://user.ihuyi.com/nav/sms.html互亿天线,并且注册,进入首页

    注册后会免费送50条消息

    注册完后进入验证码通知短信,复制自己的api接口信息,apiid和apikey。并且保存

    然后点击右上角的文档中心,进入后下载api文档

    下载后为一个压缩包,解压。解压之后进入文件夹打开DEMO文件夹。里面为各种脚本语言实现发送短信的样本

    找到python文本,直接打开可能会出现乱码,选择用记事本打开,然后全部copy到py文件中

    二、修改py文件

    修改的代码如下:

     1 # 接口类型:互亿无线触发短信接口,支持发送验证码短信、订单通知短信等。
     2 # 账户注册:请通过该地址开通账户http://sms.ihuyi.com/register.html
     3 # 注意事项:
     4 # (1)调试期间,请用默认的模板进行测试,默认模板详见接口文档;
     5 # (2)请使用APIID(查看APIID请登录用户中心->验证码短信->产品总览->APIID)及 APIkey来调用接口;
     6 # (3)该代码仅供接入互亿无线短信接口参考使用,客户可根据实际需要自行编写;
     7 
     8 # !/usr/local/bin/python
     9 # -*- coding:utf-8 -*-
    10 import http.client
    11 import urllib
    12 
    13 host = "106.ihuyi.com"
    14 sms_send_uri = "/webservice/sms.php?method=Submit"
    15 
    16 # 用户名是登录用户中心->验证码短信->产品总览->APIID
    17 account = "xxxxxxx"
    18 # 密码 查看密码请登录用户中心->验证码短信->产品总览->APIKEY
    19 password = "xxxxxxxxxxxxxxxx"
    20 
    21 
    22 def send_sms(text, mobile):
    23     params = urllib.parse.urlencode(
    24         {'account': account, 'password': password, 'content': text, 'mobile': mobile, 'format': 'json'})
    25     headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
    26     conn = http.client.HTTPConnection(host, port=80, timeout=30)
    27     conn.request("POST", sms_send_uri, params, headers)
    28     response = conn.getresponse()
    29     response_str = response.read()
    30     conn.close()
    31     return response_str
    32 
    33 
    34 if __name__ == '__main__':
    35    # 手机号
    36     mobile = "13111111111"
    37     text = "您的验证码是:121254。请不要把验证码泄露给其他人。"
    38 
    39     print(send_sms(text, mobile))

    三、发送随机验证码

    利用python中random发送随机的6位验证码,只需在执行的时候加上生成随机6位数

    1 if __name__ == '__main__':
    2     x = random.randint(100000,999999) # 生成大于等于100000小于等于999999的一个数
    3     print(x)
    4     mobile = "xxxxxxx"
    5     text = "您的验证码是:" + str(x) + "。请不要把验证码泄露给其他人。" # 将整型x转为字符串型并且发送
    6     print(send_sms(text, mobile))
  • 相关阅读:
    营销型站点的建设流程是什么?
    MAC 通过brew安装软件
    Android实现分享内容到微信朋友圈
    C++设计模式之适配器模式(三)
    JEECG平台权限设计
    .Net修改网站项目调试时的虚拟目录(未验证)
    .Net修改网站项目调试时的虚拟目录
    ECharts.js学习动态数据绑定
    百度ECharts
    asp.net loading 动画
  • 原文地址:https://www.cnblogs.com/tynam/p/8757966.html
Copyright © 2020-2023  润新知