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


Posted in Python onJuly 08, 2017

本文实例讲述了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程序设计有所帮助。

Python 相关文章推荐
Python对列表排序的方法实例分析
May 16 Python
浅谈python为什么不需要三目运算符和switch
Jun 17 Python
基础的十进制按位运算总结与在Python中的计算示例
Jun 28 Python
Python中标准模块importlib详解
Apr 16 Python
Python3 循环语句(for、while、break、range等)
Nov 20 Python
matplotlib作图添加表格实例代码
Jan 23 Python
python实现简易通讯录修改版
Mar 13 Python
python3+PyQt5图形项的自定义和交互 python3实现page Designer应用程序
Jul 20 Python
详解Django解决ajax跨域访问问题
Aug 24 Python
浅谈Python批处理文件夹中的txt文件
Mar 11 Python
Python异常继承关系和自定义异常实现代码实例
Feb 20 Python
Python绘制组合图的示例
Sep 18 Python
HTML中使用python屏蔽一些基本功能的方法
Jul 07 #Python
CentOS 7下安装Python 3.5并与Python2.7兼容并存详解
Jul 07 #Python
浅谈Python中的可变对象和不可变对象
Jul 07 #Python
Python MySQL数据库连接池组件pymysqlpool详解
Jul 07 #Python
Python用Pillow(PIL)进行简单的图像操作方法
Jul 07 #Python
python 表达式和语句及for、while循环练习实例
Jul 07 #Python
Python中字典和集合学习小结
Jul 07 #Python
You might like
PHP自动生成表单代码分享
2015/06/19 PHP
Yii框架实现邮箱激活的方法【数字签名】
2016/10/18 PHP
php5.5使用PHPMailer-5.2发送邮件的完整步骤
2018/10/14 PHP
jQuery对象和DOM对象的相互转化实现代码
2010/03/02 Javascript
jQuery插件实现表格隔行换色且感应鼠标高亮行变色
2013/09/22 Javascript
jquery scroll()区分横向纵向滚动条的方法
2014/04/04 Javascript
如何使用HTML5地理位置定位功能
2015/04/27 Javascript
基于Bootstrap重置输入框内容按钮插件
2016/05/12 Javascript
由浅入深剖析Angular表单验证
2016/07/14 Javascript
JS数组去掉重复数据只保留一条的实现代码
2016/08/11 Javascript
浅谈jQuery before和insertBefore的区别
2016/12/04 Javascript
浅谈JavaScript中promise的使用
2017/01/11 Javascript
angular2+nodejs实现图片上传功能
2017/03/27 NodeJs
详解JS获取HTML DOM元素的8种方法
2017/06/17 Javascript
解决bootstrap模态框数据缓存的问题方法
2018/08/10 Javascript
NodeJs实现简单的爬虫功能案例分析
2018/12/05 NodeJs
小程序中设置缓存过期的实现方法
2020/01/14 Javascript
react使用CSS实现react动画功能示例
2020/05/18 Javascript
使用React-Router实现前端路由鉴权的示例代码
2020/07/26 Javascript
[01:17:55]VGJ.T vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/20 DOTA
Django基础之Model操作步骤(介绍)
2017/05/27 Python
在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例
2019/01/29 Python
Pytorch 多块GPU的使用详解
2019/12/31 Python
pycharm 实现调试窗口恢复
2021/02/05 Python
HTML5使用DOM进行自定义控制示例代码
2013/06/08 HTML / CSS
中国电视购物:快乐购
2017/02/04 全球购物
美国厨房和园艺工具网上商店:Nestneed
2019/08/24 全球购物
美国最大的在线生存商店:Survival Frog
2020/12/13 全球购物
xml有哪些解析技术?区别是什么
2016/04/26 面试题
类、抽象类、接口的差异
2016/06/13 面试题
教师党员承诺书
2014/03/25 职场文书
2014党员整改措施思想汇报
2014/10/07 职场文书
Node-Red实现MySQL数据库连接的方法
2021/08/07 MySQL
使用springMVC所需要的pom配置
2021/09/15 Java/Android
Nginx+Tomcat负载均衡集群的实现示例
2021/10/24 Servers
SpringBoot系列之MongoDB Aggregations用法详解
2022/02/12 MongoDB