在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 pass详细介绍及实例代码
Nov 24 Python
python实现的多线程端口扫描功能示例
Jan 21 Python
python画折线图的程序
Jul 26 Python
pandas重新生成索引的方法
Nov 06 Python
用pycharm开发django项目示例代码
Jun 13 Python
python设置环境变量的原因和方法
Jun 24 Python
pytorch方法测试——激活函数(ReLU)详解
Jan 15 Python
python3实现网页版raspberry pi(树莓派)小车控制
Feb 12 Python
浅谈Python中re.match()和re.search()的使用及区别
Apr 14 Python
Django多数据库联用实现方法解析
Nov 12 Python
使用numpy nonzero 找出非0元素
May 14 Python
Tensorflow与RNN、双向LSTM等的踩坑记录及解决
May 31 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
PHP 年龄计算函数(精确到天)
2012/06/07 PHP
PHP中$_FILES的使用方法及注意事项说明
2014/02/14 PHP
php去除二维数组的重复项方法
2015/11/03 PHP
php车辆违章查询数据示例
2016/10/14 PHP
详解Yii2高级版引入bootstrap.js的一个办法
2017/03/21 PHP
jQuery 处理表单元素的代码
2010/02/15 Javascript
javascript实现画不相交的圆
2015/04/07 Javascript
使用JavaScript的AngularJS库编写hello world的方法
2015/06/23 Javascript
使用控制台破解百小度一个月只准改一次名字
2015/08/13 Javascript
HTML5之WebSocket入门3 -通信模型socket.io
2015/08/21 Javascript
js阻止默认浏览器行为与冒泡行为的实现代码
2016/05/15 Javascript
详解Angular的数据显示优化处理
2016/12/26 Javascript
浅析vue component 组件使用
2017/03/06 Javascript
js实现点击切换checkbox背景图片的简单实例
2017/05/08 Javascript
Angular2使用vscode断点调试ts文件的方法
2017/12/13 Javascript
angular2中Http请求原理与用法详解
2018/01/11 Javascript
vue之浏览器存储方法封装实例
2018/03/15 Javascript
基于JS实现html中placeholder属性提示文字效果示例
2018/04/19 Javascript
[01:01:25]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第三局
2016/02/27 DOTA
浅谈python新手中常见的疑惑及解答
2016/06/14 Python
python实现BackPropagation算法
2017/12/14 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
2018/04/11 Python
python:print格式化输出到文件的实例
2018/05/14 Python
python 使用while写猜年龄小游戏过程解析
2019/10/07 Python
关于Theano和Tensorflow多GPU使用问题
2020/06/19 Python
pycharm 快速解决python代码冲突的问题
2021/01/15 Python
idealfit英国:世界领先的女性健身用品和运动衣物品牌
2017/11/25 全球购物
物业保安主管岗位职责
2013/12/25 职场文书
生产车间主管岗位职责
2013/12/28 职场文书
运动会邀请函范文
2014/01/31 职场文书
中学生运动会入场词
2014/02/12 职场文书
生日庆典策划方案
2014/06/02 职场文书
初中学习计划书范文
2014/09/15 职场文书
大学生军训感言
2015/08/01 职场文书
golang中的空slice案例
2021/04/27 Golang
Django如何与Ajax交互
2021/04/29 Python