天天看點

python發送手機動态驗證碼

一、準備短信發送平台

首先進入http://user.ihuyi.com/nav/sms.html互億天線,并且注冊,進入首頁

python發送手機動态驗證碼

注冊後會免費送50條消息

注冊完後進入驗證碼通知短信,複制自己的api接口資訊,apiid和apikey。并且儲存

然後點選右上角的文檔中心,進入後下載下傳api文檔

下載下傳後為一個壓縮包,解壓。解壓之後進入檔案夾打開DEMO檔案夾。裡面為各種腳本語言實作發送短信的樣本

找到python文本,直接打開可能會出現亂碼,選擇用記事本打開,然後全部copy到py檔案中

二、修改py檔案

python發送手機動态驗證碼

修改的代碼如下:

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))