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中使用百度音乐搜索的api下载指定歌曲的lrc歌词
Jul 18 Python
Python入门篇之对象类型
Oct 17 Python
用Python创建声明性迷你语言的教程
Apr 13 Python
Python浅拷贝与深拷贝用法实例
May 09 Python
详解python中executemany和序列的使用方法
Aug 12 Python
python flask中静态文件的管理方法
Mar 20 Python
详解python 3.6 安装json 模块(simplejson)
Apr 02 Python
Pandas之ReIndex重新索引的实现
Jun 25 Python
python实现回旋矩阵方式(旋转矩阵)
Dec 04 Python
在pycharm中为项目导入anacodna环境的操作方法
Feb 12 Python
Tensorflow之梯度裁剪的实现示例
Mar 08 Python
Python用摘要算法生成token及检验token的示例代码
Dec 01 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中OO之静态关键字以及类常量的详解
2013/06/07 PHP
php中base64_decode与base64_encode加密解密函数实例
2014/11/24 PHP
PHP中文竖排转换实现方法
2015/10/23 PHP
[原创]php正则删除img标签的方法示例
2017/05/27 PHP
laravel excel 上传文件保存到本地服务器功能
2019/11/14 PHP
PHP7 其他语言层面的修改
2021/03/09 PHP
JavaScript中Math对象使用说明
2008/01/16 Javascript
jqgrid 简单学习笔记
2011/05/03 Javascript
javascript 模拟坦克大战游戏(html5版)附源码下载
2014/04/08 Javascript
给应用部分的js代码设定一个统一的入口
2014/06/15 Javascript
JS实现把鼠标放到链接上出现滚动文字的方法
2016/04/06 Javascript
基于JS判断iframe是否加载成功的方法(多种浏览器)
2016/05/13 Javascript
BootStrap 导航条实例代码
2017/05/18 Javascript
Nodejs实现的操作MongoDB数据库功能完整示例
2019/02/02 NodeJs
微信小程序移动拖拽视图-movable-view实例详解
2019/08/17 Javascript
微信小程序按顺序同步执行的两种方式
2019/12/20 Javascript
Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)
2020/11/05 Javascript
wxPython学习之主框架实例
2014/09/28 Python
利用python爬取散文网的文章实例教程
2017/06/18 Python
基于numpy.random.randn()与rand()的区别详解
2018/04/17 Python
Python解决走迷宫问题算法示例
2018/07/27 Python
python列表,字典,元组简单用法示例
2019/07/11 Python
python ubplot使用方法解析
2020/01/10 Python
python实现银行实战系统
2020/02/26 Python
python 如何将office文件转换为PDF
2020/09/22 Python
用python对excel查重
2020/12/07 Python
CSS3 Backgrounds属性相关介绍
2011/05/11 HTML / CSS
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
爱情保证书大全
2014/04/29 职场文书
车间安全生产管理制度
2015/08/06 职场文书
幼儿园亲子活动感想
2015/08/07 职场文书
禁毒心得体会范文
2016/01/15 职场文书
三好学生竞选稿范文
2019/08/21 职场文书
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang
解决vue中provide inject的响应式监听
2022/04/19 Vue.js
kubernetes集群搭建Zabbix监控平台的详细过程
2022/07/07 Servers