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中操作日期和时间之gmtime()方法的使用
May 22 Python
python之Socket网络编程详解
Sep 29 Python
windows下python之mysqldb模块安装方法
Sep 07 Python
使用tensorflow实现AlexNet
Nov 20 Python
djang常用查询SQL语句的使用代码
Feb 15 Python
Python数据库小程序源代码
Sep 15 Python
pytorch 归一化与反归一化实例
Dec 31 Python
wxpython自定义下拉列表框过程图解
Feb 14 Python
python print 格式化输出,动态指定长度的实现
Apr 12 Python
浅析Python 简单工厂模式和工厂方法模式的优缺点
Jul 13 Python
Visual Studio code 配置Python开发环境
Sep 11 Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
Oct 28 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的ob_start();控制您的浏览器cache!
2006/11/25 PHP
php获取url参数方法总结
2014/11/13 PHP
Paypal实现循环扣款(订阅)功能
2017/03/23 PHP
IIS 7.5 asp Session超时时间设置方法
2017/04/17 PHP
浅谈PHP错误类型及屏蔽方法
2017/05/27 PHP
laravel框架上传图片实现实时预览功能
2019/10/14 PHP
改进:论坛UBB代码自动插入方式
2006/12/22 Javascript
纯Javascript实现Windows 8 Metro风格实现
2013/10/15 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
jQuery.extend()、jQuery.fn.extend()扩展方法示例详解
2014/05/08 Javascript
js实现二代身份证号码验证详解
2014/11/20 Javascript
js实现iframe自动自适应高度的方法
2015/02/17 Javascript
js实现select下拉框菜单
2015/12/08 Javascript
JavaScript中0和&quot;&quot;比较引发的问题
2016/05/26 Javascript
Bootstrap table中toolbar新增条件查询及refresh参数使用方法
2018/05/18 Javascript
vue实现动态显示与隐藏底部导航的方法分析
2019/02/11 Javascript
谈谈IntersectionObserver懒加载的具体使用
2019/10/15 Javascript
简单了解JavaScript作用域
2020/07/31 Javascript
[02:00]DOTA2英雄COSPLAY闹市街头巡游助威2015国际邀请赛
2015/08/02 DOTA
Python matplotlib通过plt.scatter画空心圆标记出特定的点方法
2018/12/13 Python
详解Python 爬取13个旅游城市,告诉你五一大家最爱去哪玩?
2019/05/07 Python
python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能
2019/07/04 Python
python开发实例之Python的Twisted框架中Deferred对象的详细用法与实例
2020/03/19 Python
CSS3实现头像旋转效果
2017/03/13 HTML / CSS
摩托车和ATV零件、配件和服装的首选在线零售商:MotoSport
2017/12/22 全球购物
澳大利亚电商Catch新西兰站:Catch.co.nz
2020/05/30 全球购物
金融行业职业生涯规划范文
2014/01/17 职场文书
学校消防安全制度
2014/01/30 职场文书
退伍老兵事迹材料
2014/01/31 职场文书
新闻专业学生的自我评价
2014/02/13 职场文书
财务人员担保书
2014/05/13 职场文书
羽毛球比赛策划方案
2014/06/13 职场文书
庆国庆国旗下讲话稿2014
2014/09/21 职场文书
敲诈同学钱财检讨书范文
2014/11/18 职场文书
优秀班主任主要事迹材料
2014/12/16 职场文书
义诊活动通知
2015/04/24 职场文书