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和JavaScript间代码转换的4个工具
Feb 22 Python
python自动发邮件总结及实例说明【推荐】
May 31 Python
Python通用函数实现数组计算的方法
Jun 13 Python
如何用Python制作微信好友个性签名词云图
Jun 28 Python
Pyorch之numpy与torch之间相互转换方式
Dec 31 Python
Python实现bilibili时间长度查询的示例代码
Jan 14 Python
基于梯度爆炸的解决方法:clip gradient
Feb 04 Python
Python使用uuid库生成唯一标识ID
Feb 12 Python
Python3读取和写入excel表格数据的示例代码
Jun 09 Python
Python字符串格式化常用手段及注意事项
Jun 17 Python
matplotlib subplot绘制多个子图的方法示例
Jul 28 Python
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
Jun 11 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
phpadmin如何导入导出大数据文件及php.ini参数修改
2013/02/18 PHP
PHP SPL使用方法和他的威力
2013/11/12 PHP
PHP中比较两个字符串找出第一个不同字符位置例子
2014/04/08 PHP
一个非常完美的读写ini格式的PHP配置类分享
2015/02/12 PHP
PHP环形链表实现方法示例
2017/09/15 PHP
PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例
2020/01/23 PHP
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
javascript实现图片切换的幻灯片效果源代码
2012/12/12 Javascript
js 自定义个性下拉选择框示例
2013/08/20 Javascript
Angularjs实现多个页面共享数据的方式
2016/03/29 Javascript
Bootstrap中文本框的宽度变窄并且加入一副验证码图片的实现方法
2016/06/23 Javascript
Bootstrap表单布局样式源代码
2016/07/04 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
2016/07/07 Javascript
JS实现京东首页之页面顶部、Logo和搜索框功能
2017/01/12 Javascript
基于vue的短信验证码倒计时demo
2017/09/13 Javascript
Vue中自定义全局组件的实现方法
2017/12/08 Javascript
ng-alain表单使用方式详解
2018/07/10 Javascript
vue如何实现动态加载脚本
2020/02/05 Javascript
vue-socket.io跨域问题有效解决方法
2020/02/11 Javascript
python文件的md5加密方法
2016/04/06 Python
python中使用正则表达式的后向搜索肯定模式(推荐)
2017/11/11 Python
Python编程使用*解包和itertools.product()求笛卡尔积的方法
2017/12/18 Python
Python assert关键字原理及实例解析
2019/12/13 Python
Python爬虫HTPP请求方法有哪些
2020/06/03 Python
详解python中的异常捕获
2020/12/15 Python
优衣库台湾官网:UNIQLO台湾
2019/02/01 全球购物
String和StringBuffer的区别
2015/08/13 面试题
C#面试题问题集
2016/04/02 面试题
网络编辑岗位职责
2014/03/18 职场文书
贷款担保书
2015/01/20 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书
班主任工作总结范文
2015/08/13 职场文书
2019初中学生入团申请书
2019/06/27 职场文书
Oracle 临时表空间SQL语句的实现
2021/09/25 Oracle
Python如何快速找到多个字典中的公共键(key)
2022/04/29 Python
MySQL远程无法连接的一些常见原因总结
2022/09/23 MySQL