一、準備簡訊傳送平臺
首先進入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))