云片网发短信

使用云片网同步发送单条短信

# coding:utf-8

import requests
class YunPian:
	def send_single_sms(self):
		url = "https://sms.yunpian.com/v2/sms/single_send.json"
		api_key = "你的apikey"
		code = "【云片网】您的验证码是{}".format(1234)
		
		res = requests.post(url,json={
			"apikey":api_key,
			"mobile":"手机号",
			"text":code,
		})

	return res

if __name__ == '__main__':
	yun_pian = YunPian()
	res = yun_pian.send_single_sms()
	print(res)

发送异步短信

# coding:utf-8

from urllib.parse import urlencode

from tornado import httpclient
from tornado.httpclient import HTTPRequest

class YunPian:
	async def send_single_sms(self):
	
		http_client = httpclient.AsyncHTTPClient() 
		
		url = "https://sms.yunpian.com/v2/sms/single_send.json"
		api_key = "你的apikey"
		code = "【云片网】您的验证码是{}".format(1234)
		
		post_request = HTTPRequest(url=url,method="POST",body=urlencode({
            "apikey":api_key,
			"mobile":"手机号",
			"text":code,
		}))
		
		
		res = await http_client.fetch(post_request)

		print(res.body.decode("utf8"))

if __name__ == '__main__':
	import tornado
	io_loop = tornado.ioloop.IOLoop.current()
	
	yun_pian = YunPian()
	
	#遇见只能传递函数名的方法,使用一下办法,生成一个带有参数的新函数名
	#from functools import partial
	#new_func = partial(yun_pian.send_single_sms,"参数1",参数2)
	
	#run_sync方法可以在运行完某个协程之后停止时间循环
	io_loop.run_sync(yun_pian.send_single_sms)



	

1小时内,一个手机号只能接受三次短信验证码

发送失败的话 400 bad request ,可以先去请查看云片网控制台看看失败原因,或者代码里找找错误

猜你喜欢

转载自blog.csdn.net/sunt2018/article/details/84571482