itchatmp:完备优雅的微信公众号接口

itchatmp

itchatmp是一个开源的微信公众号、企业号接口,使用python调用微信公众号从未如此简单。

充分包装,不需要对于底层的任何了解,仅需掌握Python即可使用。

基于tornado框架,轻松满足效率需求。支持普通使用、nginx反向代理与wsgi。

同样的命令,支持同步与协程调用,适合各层次开发者使用。

与个人号接口itchat共享类似的操作方式,学习一次掌握两个工具。

安装

可以通过本命令安装itchatmp:

pip install itchatmp

快速入门

有了itchatmp,如果你想要回复发给自己的文本消息,只需要这样:

import itchatmp

itchatmp.update_config(itchatmp.WechatConfig(
    token='yourToken',
    appId = 'yourAppId',
    appSecret = 'yourAppSecret'))

@itchatmp.msg_register(itchatmp.content.TEXT)
def text_reply(msg):
    return msg['content']

itchatmp.run()

一些进阶应用可以在Advanced uses中看到,或者你也可以阅览文档

截屏

demo
demo

进阶使用

企业号配置

在配置时设置copId而非appId即可。

另,由于企业号没有明文模式,所以必须将加密模式设置为安全。

具体的设置可以看这里

协程使用

如果你需要使用协程版本的itchatmp,你需要另外安装一个组件:

pip install itchatmphttp

这样,你的itchatmp就变成协程版本了。同样,删除以后就变回了线程池版本。

例如回复信息的操作,协程也只需要这样写:

import itchatmp
from tornado import gen

itchatmp.update_config(itchatmp.WechatConfig(
    token='yourToken',
    appId = 'yourAppId',
    appSecret = 'yourAppSecret'))

@itchatmp.msg_register(itchatmp.content.TEXT)
def text_reply(msg):
    yield gen.sleep(3)
    r = yield itchatmp.send('First message', msg['FromUserName'])
    print('First message sent: %s' % r)
    yield gen.sleep(3)
    r = yield itchatmp.send('First message', msg['FromUserName'])
    print('Second message sent: %s' % r)

itchatmp.run()

itchatmp里面所有的方法都变成了协程方法,如果你不熟悉协程建议不要使用,线程池也足够满足普通需求。

如果你问出类似为什么time.sleep阻塞了协程的问题,我会很困扰的。

WSGI使用

如果你需要生成一个能够在类似SAE的平台上包装的应用,你可以这样生成:

app = itchatmp.run(isWsgi=True)

如果你还是无法配置,请阅读文档一栏的部署部分。

意见与建议

如果有什么问题或者建议都可以在这个Issue和我讨论

当然也可以加入我们新建的QQ群讨论:438747166

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,642评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,738评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,236评论 4 61
  • 在回答这个问题前,先给大家看一份日程表 这是我看到的彭小六的深圳一天的日常 初看时并没有太大的感觉,但是在我仔细翻...
    九小贱JXJ阅读 2,256评论 0 0
  • Grieche阅读 2,669评论 0 5