Python发送手机短信(融合云信平台)
寫下這篇文章,算是記錄一下Python發送手機短信的過程。現在通過手機短信推送信息一般比較方便,在企業內部,一般用郵件推送通知,如果不是每個人都有郵箱的話,郵件推送的局限性就出來了。手機短信的實時性比較好,可以快速批量的發送給大量用戶。這里我使用的短信平臺是融合云信的,參考了一下官方文檔,里面只有接口的說明,沒有Python版的發送示例,在這里就整理一下吧。
大致的腳本發送手機短信的步驟分為如下:
1. 準備短信平臺,配置簽名和模板,
2. 熟悉短信接口,融合云信采用的是發送HTTPPOST請求,編碼格式“UTF-8”
接口請求參數:
字段名 | 字段類型 | 是否必須 | 說明 |
cpcode | String | 必須 | 渠道在融合云信平臺申請的cpcode 登錄自服務平臺,商戶信息頁面中的【商戶編碼】 |
msg | String | 必須 | 模板參數值,如果包含多個參數,以半角英文逗號分隔 |
mobiles | String | 必須 | 11位手機號,如果包含多個手機號,請用半角英文逗號分隔,最多支持300個手機號 |
excode | String | 必須 | 渠道自定義接入號的擴展碼,可為空;為空時傳空字符串”” |
templetid | String | 必須 | 渠道在融合云信平臺申請的模板短信ID |
sign | String | 必須 | MD5簽名,簽名字符串為cpcode+ msg+mobiles+excode+templetid+key,其中key為融合云信平臺分配的私鑰,將簽名字符串用MD5加密后轉換為小寫字符串。 fabb84960500d01c2d6ce00452d4ae0b |
接口提供者:融合云信
接口地址:https://rcsapi.wo.cn:8043/umcinterface/sendtempletmsg
接口調用者:商戶
Content-Type:application/json
數據舉例:
{"cpcode":"XXXXXX","msg":"183001,2,10010","mobiles":"18607714703,18648807841","excode":"00000","templetid":"2","sign":"20e90defeea6ea29e643bdd8a80b18e0"}
3. 代碼階段,腳本中最關鍵的是兩點,一是MD5轉換,二是Python發送HTTP POST。
完整發送代碼如下:
import requests
cpcode="******" //在平臺上可以找到
msg="第二次測試"
mobiles="135********"
excode="00000"
templetid="2855836" //模板對應的編號
key="fabb84960500d01c2d6ce00452*****" //Key在平臺上可以找到
def Convert_MD5(str): //按照文檔要求進行MD5轉換
import hashlib
m=hashlib.md5()
m.update(str.encode("utf8"))
returnm.hexdigest()
sign=Convert_MD5(cpcode+msg+mobiles+excode+templetid+key) //按照要求MD5轉換
smsapi=https://rcsapi.wo.cn:8043/umcinterface/sendtempletmsg//接口地址
params={
"cpcode":cpcode,
"msg":msg,
"mobiles":mobiles,
"excode":excode,
"templetid":templetid,
"sign":sign
}
headers = {
'X-Lemonban-Media-Type': 'lemonban.v2'
}
response=requests.post(url=smsapi,json=params,headers=headers) //發送請求
print(response) //輸入返回結果
print(response.text)
給需要的同行朋友參考參考。
總結
以上是生活随笔為你收集整理的Python发送手机短信(融合云信平台)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中国独角兽排行榜2023
- 下一篇: 欢聚时代c++开发岗位面试经验