在Python的Bottle框架中使用微信API的示例


Posted in Python onApril 23, 2015

微信这个东西估计宅男没几个不熟悉的吧,微信经过这么两年多的发展终于向开放平台跨出了友好的一步。蛋疼的以为微信会出一个详细的api等接口,兴奋不已的去申请了微信公共平台,然后开始找各种api的位置……

花费了近一个小时,依然没找到……

最后动用Google大杀器,终于找到了这么个链接。我了个去的,没比这还简单的api文档了吧。

最让人无法理解的是:居然没有本地开发环境支持,每次都要放在生产环境去调试。

最让人欣慰的是:就那么俩方法,生产环境调试几次也就完事了。

Python(bottle)版代码如下:

# -*- coding:utf-8 -*-

from bottle import debug, default_app, run, get, request, post

import sys, os, time, libxml2dom

@get('/')

def index():

  return request.GET.get('echostr')

@post('/')

def index_post():

  for key, value in request.POST.allitems():

    doc = libxml2dom.parseString(key)

    _to = doc.xpath('//FromUserName')[0].textContent

    _from = doc.xpath('//ToUserName')[0].textContent

    #_content = doc.xpath('//Content')[0].textContent

  return """<xml>

<ToUserName><![CDATA[%s]]></ToUserName>

<FromUserName><![CDATA[%s]]></FromUserName>

<CreateTime>%s</CreateTime>

<MsgType><![CDATA[text]]></MsgType>

<Content><![CDATA[%s]]></Content>

<FuncFlag>0</FuncFlag>

</xml>"""%(_to, _from, int(time.time()), u'我了个去啊')

if __name__ == "__main__":

  # Interactive mode

  debug(True)

  port = int(sys.argv[1] if len(sys.argv) > 1 else 8888)

  run(host='0.0.0.0', port=port, reloader=True)

else:

  # Mod WSGI launch

  os.chdir(os.path.dirname(__file__))

  app = default_app()

演示直接看图:

在Python的Bottle框架中使用微信API的示例

Python 相关文章推荐
Python编程入门的一些基本知识
May 13 Python
Python fileinput模块使用实例
Jun 03 Python
Python自动化部署工具Fabric的简单上手指南
Apr 19 Python
关于反爬虫的一些简单总结
Dec 13 Python
python如何通过twisted实现数据库异步插入
Mar 20 Python
Python补齐字符串长度的实例
Nov 15 Python
浅谈Python爬虫基本套路
Mar 25 Python
解决使用export_graphviz可视化树报错的问题
Aug 09 Python
Centos7下源码安装Python3 及shell 脚本自动安装Python3的教程
Mar 07 Python
python实现简单坦克大战
Mar 27 Python
Python实现ElGamal加密算法的示例代码
Jun 19 Python
python3排序的实例方法
Oct 20 Python
最基础的Python的socket编程入门教程
Apr 23 #Python
利用Python实现简单的相似图片搜索的教程
Apr 23 #Python
以911新闻为例演示Python实现数据可视化的教程
Apr 23 #Python
Python中优化NumPy包使用性能的教程
Apr 23 #Python
python通过自定义isnumber函数判断字符串是否为数字的方法
Apr 23 #Python
用Python给文本创立向量空间模型的教程
Apr 23 #Python
用Python进行行为驱动开发的入门教程
Apr 23 #Python
You might like
syphon 虹吸式咖啡冲泡冲煮倒水的得与失
2021/03/03 冲泡冲煮
PHP详细彻底学习Smarty
2008/03/27 PHP
PHP实现提取一个图像文件并在浏览器上显示的代码
2012/10/06 PHP
php实现分页工具类分享
2014/01/09 PHP
php 魔术方法详解
2014/11/11 PHP
PHP进程同步代码实例
2015/02/12 PHP
PHP 观察者模式深入理解与应用分析
2019/09/25 PHP
JS 各种网页尺寸判断实例方法
2013/04/18 Javascript
Extjs4 GridPanel的主要配置参数详细介绍
2013/04/18 Javascript
JS实现根据当前文字选择返回被选中的文字
2014/05/21 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
2016/05/18 Javascript
jQuery实现页面评论栏中访客信息自动填写功能的方法
2016/05/23 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
2016/06/24 Javascript
JavaScript实现Java中Map容器的方法
2016/10/09 Javascript
使用JavaScriptCore实现OC和JS交互详解
2017/03/28 Javascript
解决webpack -p压缩打包react报语法错误的方法
2017/07/03 Javascript
Vuex中mutations与actions的区别详解
2018/03/01 Javascript
Vue中多个元素、组件的过渡及列表过渡的方法示例
2019/02/13 Javascript
微信端调取相册和摄像头功能,实现图片上传,并上传到服务器
2019/05/16 Javascript
javascript简单实现深浅拷贝过程详解
2019/10/08 Javascript
JS实现随机抽取三人
2019/11/06 Javascript
JavaScript实现点击图片换背景
2020/11/20 Javascript
Python创建模块及模块导入的方法
2015/05/27 Python
Python的Flask框架及Nginx实现静态文件访问限制功能
2016/06/27 Python
对python 中re.sub,replace(),strip()的区别详解
2019/07/22 Python
Python如何读取、写入JSON数据
2020/07/28 Python
Opencv python 图片生成视频的方法示例
2020/11/18 Python
澳大利亚购买最佳炊具品牌网站:Cookware Brands
2019/02/16 全球购物
科颜氏英国官网:Kiehl’s英国
2019/11/20 全球购物
老师推荐信
2013/10/28 职场文书
汽车技术服务英文求职信范文
2014/01/02 职场文书
路政管理毕业自荐书范文
2014/02/10 职场文书
春节联欢晚会主持词
2014/03/24 职场文书
全国文明单位申报材料
2014/05/31 职场文书
焦裕禄观后感
2015/06/03 职场文书