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 相关文章推荐
netbeans7安装python插件的方法图解
Dec 24 Python
Python自定义函数定义,参数,调用代码解析
Dec 27 Python
Django框架实现的简单分页功能示例
Dec 04 Python
Python爬虫实现获取动态gif格式搞笑图片的方法示例
Dec 24 Python
python pytest进阶之xunit fixture详解
Jun 27 Python
Python 分享10个PyCharm技巧
Jul 13 Python
python中调试或排错的五种方法示例
Sep 12 Python
Python SQLAlchemy入门教程(基本用法)
Nov 11 Python
Django User 模块之 AbstractUser 扩展详解
Mar 11 Python
解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题
Sep 17 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
Jan 24 Python
Python快速优雅的批量修改Word文档样式
May 20 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 Mysql类 可以参考学习熟悉下
2009/06/21 PHP
PHP正则匹配反斜杠'\'和美元'$'的方法
2017/02/08 PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
2017/06/17 PHP
PHP基于phpqrcode类生成二维码的方法详解
2018/03/14 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
javascript+xml技术实现分页浏览
2008/07/27 Javascript
JS清除IE浏览器缓存的方法
2013/07/26 Javascript
Javascript 按位取反运算符 (~)
2014/02/04 Javascript
jQuery基于ajax实现星星评论代码
2015/08/07 Javascript
JS简单实现城市二级联动选择插件的方法
2015/08/19 Javascript
JavaScript简单下拉菜单实例代码
2015/09/07 Javascript
微信小程序开发探究
2016/12/27 Javascript
Vue.js父与子组件之间传参示例
2017/02/28 Javascript
Bootstrap Table使用整理(一)
2017/06/09 Javascript
Vue+Element使用富文本编辑器的示例代码
2017/08/14 Javascript
提升页面加载速度的插件InstantClick
2017/09/12 Javascript
使用vue如何构建一个自动建站项目
2018/02/05 Javascript
详解如何在nuxt中添加proxyTable代理
2018/08/10 Javascript
vue中音频wavesurfer.js的使用方法
2020/02/20 Vue.js
Python文件操作,open读写文件,追加文本内容实例
2016/12/14 Python
Pandas中把dataframe转成array的方法
2018/04/13 Python
[原创]Python入门教程4. 元组基本操作
2018/10/31 Python
如何用Python破解wifi密码过程详解
2019/07/12 Python
使用NumPy读取MNIST数据的实现代码示例
2019/11/20 Python
详解CSS透明opacity和IE各版本透明度滤镜filter的最准确用法
2016/12/20 HTML / CSS
php优化查询foreach代码实例讲解
2021/03/24 PHP
专科毕业生就业推荐信
2013/11/01 职场文书
大学生职业生涯规划书模板
2014/01/03 职场文书
《雨霖铃》教学反思
2014/02/22 职场文书
环保倡议书100字
2014/05/15 职场文书
幼儿园保育员责任书
2014/07/22 职场文书
个人融资协议书范本两则
2014/10/15 职场文书
2016年4月份红领巾广播稿
2015/12/21 职场文书
Java使用httpRequest+Jsoup爬取红蓝球号码
2021/07/02 Java/Android
Redis Cluster 集群搭建你会吗
2021/08/04 Redis