English versionpython
itchatmp是一個開源的微信公衆號、企業號接口,使用python調用微信公衆號從未如此簡單。nginx
充分包裝,不須要對於底層的任何瞭解,僅需掌握Python便可使用。git
基於tornado框架,輕鬆知足效率需求。支持普通使用、nginx反向代理與wsgi。github
一樣的命令,支持同步與協程調用,適合各層次開發者使用。安全
與我的號接口itchat共享相似的操做方式,學習一次掌握兩個工具。微信
能夠經過本命令安裝itchatmp:app
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中看到,或者你也能夠閱覽文檔。tornado
這是一個基於這一項目的開源小機器人,百聞不如一見,有興趣能夠嘗試一下。工具
在配置時設置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
阻塞了協程的問題,我會很困擾的。
若是你須要生成一個可以在相似SAE的平臺上包裝的應用,你能夠這樣生成:
app = itchatmp.run(isWsgi=True)
若是你仍是沒法配置,請閱讀文檔一欄的部署部分。
若是有什麼問題或者建議均可以在這個Issue和我討論
固然也能夠加入咱們新建的QQ羣討論:438747166