发送手机验证码
1. 利用網易云云信平臺發送手機驗證碼
import random import string import time import hashlib from urllib import parse, request def send_sms():# 請求的urlapi = 'https://api.netease.im/sms/sendcode.action' ?# 準備headers中的參數# 網易云信平臺分配的appkeyAppKey = '097c1bd21e9e24279517ddbe07cf8a84'# 最大128個字符的隨機字符串Nonce = ''.join(random.sample(string.ascii_letters + string.digits, 20))# 當前UTC時間戳從1970年1月1日0點0 分0 秒開始到現在的秒數(String)CurTime = str(int(time.time()))#appsecretAppSecret = '12b619be2374'# 校驗碼Sumstr = AppSecret + Nonce + CurTimesha = hashlib.sha1(Sumstr.encode())CheckSum = sha.hexdigest()# 另一種使用hash的用法。hash = hashlib.sha1()hash.update(Sumstr)hash.hexdigest() ?# 設置頭headers = {'AppKey': AppKey,'Nonce' : Nonce,'CurTime': CurTime,'CheckSum': CheckSum,'Content-Type': 'application/x-www-form-urlencoded','charset': 'utf-8'} ?# 準備要發送的數據,必填的只有一個手機號data = {'mobile': '18676689715','templateid': '4032501'}# 把字典解析成url中傳參的格式,即:mobile='18676689715'data = parse.urlencode(data).encode()# 創建request實例對象r = request.Request(url=api, headers=headers, data=data)req = request.urlopen(r)response = req.read()print(response) ? ? if __name__ == '__main__':send_sms()2. 利用云片網發送手機驗證碼
注意:云片網需要把自己的ip加入到IP白名單里面。發送短信的模板必須是你在云片網中配置好的。
import requests ? class YunPian(object): ?def __init__(self,api_key):self.api_key = api_keyself.single_send_url = 'https://sms.yunpian.com/v2/sms/single_send.json' ?def send_sms(self,code,mobile):parmas={"apikey":self.api_key,'mobile':mobile,'text':'您的驗證碼是{code}'.format(code=code)} ?response = requests.post(self.single_send_url,data=parmas)import jsonre_dict = json.loads(response.text)return re_dict ? if __name__ == '__main__':yun_pian = YunPian("自己的api_key")yun_pian.send_sms('2018',"電話號碼")總結
- 上一篇: 新一代人工智能发展规划发布
- 下一篇: 移动互联网开发教学案例学习-8