秒嘀云发送短信Python实现
主要根据它提供的API文档,根据自己的参数来写。文档地址
我遇到的一个问题是我无法使用smsContent这个参数来发送信息。(PS:可能是我姿势不对)所以我选用了templateid + param 的方式来实现发送信息的功能。代码示例如下,注:requests库是一个第三方库,安装方式为:pip install requests。仅供参考:
import requests
import datetime
import hashlib
import urllib
#生成特定的时间戳
nowTime=datetime.datetime.now().strftime('%Y%m%d%H%M%S')
#短信指定的URL地址
url = "https://api.miaodiyun.com/20150822/industrySMS/sendSMS"
accountSid = "Your accountSid"
templateid = "Your templateid"
param = "Your param"
to = "Phone number"
Token = "Your Token"
#sig制作
sig = accountSid + Token + nowTime
h1 = hashlib.md5()
h1.update(sig.encode("utf-8"))
#post表单填写
data = {
"accountSid": accountSid,
"templateid": templateid,
"param":param,
"to": to,
"timestamp": nowTime,
"sig" : h1.hexdigest()
}
#格式化表单
data = urllib.parse.urlencode(data)
#浏览器头信息
headers = {'Accept':'application/json',
'Content-Type':'application/x-www-form-urlencoded',
}
#使用requests库, 以post的方式请求
#url 表示请求的链接, data 表示要发送的包头数据, headers代表浏览器头文件
response = requests.post(url, data = data ,headers = headers)
#获取请求响应码,如果成功响应会返回200. 可有可无
print(response.status_code)
#打印请求相应数据
print(response.content.decode('utf-8'))