python

超轻量级php框架startmvc

Python调用微信公众平台接口操作示例

更新时间:2020-05-03 14:00:01 作者:startmvc
本文实例讲述了Python调用微信公众平台接口操作。分享给大家供大家参考,具体如下:这里

本文实例讲述了Python调用微信公众平台接口操作。分享给大家供大家参考,具体如下:

这里使用的是Django,其他类似


# coding=utf-8
from django.http import HttpResponse
import hashlib, time, re
from xml.etree import ElementTree as ET
def weixin(request):
 token = "your token here"
 params = request.GET
 args = [token, params['timestamp'], params['nonce']]
 args.sort()
 if hashlib.sha1("".join(args)).hexdigest() == params['signature']:
 if params.has_key('echostr'):
 return HttpResponse(params['echostr'])
 else:
 reply = """<xml>
 <ToUserName><![CDATA[%s]]></ToUserName>
 <FromUserName><![CDATA[%s]]></FromUserName>
 <CreateTime>%s</CreateTime>
 <MsgType><![CDATA[text]]></MsgType>
 <Content><![CDATA[%s]]></Content>
 <FuncFlag>0</FuncFlag>
 </xml>"""
 if request.raw_post_data:
 xml = ET.fromstring(request.raw_post_data)
 content = xml.find("Content").text
 fromUserName = xml.find("ToUserName").text
 toUserName = xml.find("FromUserName").text
 postTime = str(int(time.time()))
 if not content:
 return HttpResponse(reply % (toUserName, fromUserName, postTime, "输入点命令吧..."))
 if content == "Hello2BizUser":
 return HttpResponse(reply % (toUserName, fromUserName, postTime, "查询成绩绩点请到http://chajidian.sinaapp.com/ 本微信更多功能开发中..."))
 else:
 return HttpResponse(reply % (toUserName, fromUserName, postTime, "暂不支持任何命令交互哦,功能开发中..."))
 else:
 return HttpResponse("Invalid Request")
 else:
 return HttpResponse("Invalid Request")

Python 微信公众平台 接口