微信——消息管理:客服接口-发消息

通过app,发送微信消息到微信用户
def SendServiceText(self,Openid,message,accesstoken):
"""
回复客服文字消息


Openid:普通用户的标识,对当前公众号唯一
message:发送消息内容
accesstoken:access_token是公众号的全局唯一票据
:return
:
"""
self.logger.info('a')
if accesstoken=="":
accesstoken=self.accesstokens()
#URL链接是:客服接口-发消息调用的接口
URL="https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token={0}".format(accesstoken)
Data={"touser":Openid,"msgtype":"text","text":{"content":str(message)}}
#把数据json一下
JSON=json.dumps(Data,ensure_ascii=False)
#SubmitPOST方法是把JSON数据提交到URL方法
re=self.SubmitPOST(URL, str(JSON))
#json_decode解码
result=json_decode(re)
errcode=result["errcode"]
#result["errmsg"].encode("utf-8") 将编码转成utf-8格式的
errmsg=result["errmsg"].encode("utf-8")
self.logger.info(errcode)
self.logger.info(errmsg)
if errcode == 40001:
#发送失败重新调用该函数
return self.SendServiceText(Openid,message,self.accesstokens())
elif errcode == 40014:
#发送失败重新调用该函数
return self.SendServiceText(Openid,message,self.accesstokens())
elif errcode == 0:
return True
else:
return False
def SubmitPOST(self,URL,param):
"""提交POST"""
#urllib.urlopen(url).read()打开一个网页获取所有的内容
f = urllib.urlopen(URL,param,{'Content-Type': 'application/json'})
data= f.read()
return data
原文地址:https://www.cnblogs.com/wasayezi/p/5201303.html