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函数返回值实例分析
Jun 08 Python
在Mac OS上搭建Python的开发环境
Dec 24 Python
win7上python2.7连接mysql数据库的方法
Jan 14 Python
python机器学习理论与实战(五)支持向量机
Jan 19 Python
Python闭包执行时值的传递方式实例分析
Jun 04 Python
django rest framework 数据的查找、过滤、排序的示例
Jun 25 Python
python: 判断tuple、list、dict是否为空的方法
Oct 22 Python
解决python3运行selenium下HTMLTestRunner报错的问题
Dec 27 Python
python实现LBP方法提取图像纹理特征实现分类的步骤
Jul 11 Python
Python使用Tkinter实现滚动抽奖器效果
Jan 06 Python
Python pip install如何修改默认下载路径
Apr 29 Python
python如何利用Mitmproxy抓包
Oct 10 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遍历数组的方法分享
2012/03/22 PHP
Linux下创建nginx脚本-start、stop、reload…
2014/08/03 PHP
PHP字符串逆序排列实现方法小结【strrev函数,二分法,循环法,递归法】
2017/01/13 PHP
php连接MSsql server的五种方法总结
2018/03/04 PHP
PHP数组实际占用内存大小原理解析
2020/12/11 PHP
背景音乐每次刷新都可以自动更换
2007/02/01 Javascript
js 内存释放问题
2010/04/25 Javascript
Prototype的Class.create函数解析
2011/09/22 Javascript
使用js检测浏览器的实现代码
2013/05/14 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
2013/11/10 Javascript
JQuery文本改变触发事件如聚焦事件、失焦事件
2014/01/15 Javascript
JS+CSS实现六级网站导航主菜单效果
2015/09/28 Javascript
js中scrollTop()方法和scroll()方法用法示例
2016/10/03 Javascript
angular2倒计时组件使用详解
2017/01/12 Javascript
js中的面向对象入门
2017/03/06 Javascript
Bootstrap面板(Panels)的简单实现代码
2017/03/17 Javascript
Bootstrap下拉菜单更改为悬停(hover)触发的方法
2017/05/24 Javascript
webpack下实现动态引入文件方法
2018/02/22 Javascript
微信小程序学习笔记之目录结构、基本配置图文详解
2019/03/28 Javascript
解决layui调用自定义方法提示未定义的问题
2019/09/14 Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
2019/11/26 jQuery
使用python3.5仿微软记事本notepad
2016/06/15 Python
python中WSGI是什么,Python应用WSGI详解
2017/11/24 Python
python程序封装为win32服务的方法
2021/03/07 Python
Python3标准库总结
2019/02/19 Python
OpenCV搞定腾讯滑块验证码的实现代码
2019/05/18 Python
中国综合网上购物商城:苏宁易购
2016/08/09 全球购物
新东网科技Java笔试题
2012/07/13 面试题
一套Java笔试题
2016/08/20 面试题
幼儿教师培训感言
2014/03/08 职场文书
结婚保证书范文
2014/04/29 职场文书
节约用水标语
2014/06/11 职场文书
2014入党积极分子批评与自我批评思想汇报
2014/09/20 职场文书
爱心捐款倡议书:点燃希望,传递温暖
2019/11/04 职场文书
vue项目proxyTable配置和部署服务器
2022/04/14 Vue.js
Windows server 2012 NTP时间同步的实现
2022/06/25 Servers