python 如何发送短信?

django 学习 专栏收录该内容
4 篇文章 0 订阅

发短信和发邮件一样简单,也是只要配置一些内容就行。

首先,我们需要一个短信平台,我这里选择的是百亿无线,还有阿里云等短信平台,大家随意选择,刚注册有10条短信免费使用,大家学习使用也是够的。这是注册之后的页面,右边有你的用户名和密码,代码需要写入这个。



点击右上的文档中心后,点击下载,里面已经有写好的代码





解压打开DEMO文件


选择python语言


把里面的内容拷贝到你的视图函数里,并修改成下图


import http.client    #这里需要修改,因为它的是py2的写法
import urllib

host = "106.ihuyi.com"
sms_send_uri = "/webservice/sms.php?method=Submit"

account = "C63562911"   #用户名在短信平台可拷贝
password = "c26f1b234441c7aa72bde530c03fcdf6" #密码在短信平台可拷贝
def send_sms(text, mobile):
    params = urllib.parse.urlencode(
        {'account': account, 'password': password, 'content': text, 'mobile': mobile, 'format': 'json'})
    headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
    conn = http.client.HTTPConnection(host, port=80, timeout=30)  #注意http.client的修改
    conn.request("POST", sms_send_uri, params, headers)
    response = conn.getresponse()
    response_str = response.read()
    conn.close()
    return response_str
#调用这个方法
def sendMsg(request):
    mobile = "15521291548"
    text = "您的验证码是:520520。请不要把验证码泄露给其他人。"   #注意:这个text只能修改验证码,别的不能动,不然会影响发送,想要别的模板估计得花钱

    print(send_sms(text, mobile))
    return HttpResponse("短信已发送")

用户名和密码的获取处,拷贝粘贴

最后在url.py文件配置路由地址即可

url(r'sendMsg/', views.sendMsg),


浏览器访问,返回短信发送成功,就OK了



  • 1
    点赞
  • 0
    评论
  • 6
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

gmsGms_gms

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值