youfou / wxpy

微信机器人 / 可能是最优雅的微信个人号 API ✨✨
http://wxpy.readthedocs.io
MIT License
14.04k stars 2.39k forks source link

帮忙看下 bot 实例化后 后面一个方法就拿不到bot了 #137

Open ifour333 opened 7 years ago

ifour333 commented 7 years ago

from flask import Flask from wxpy import * app = Flask(name)

@app.route('/') def hello_world(): bot = Bot() return 'index World!'

@app.route('/ho') def hello(): my_friend = bot.friends() return my_friend

if name == 'main': app.run(host='0.0.0.0')

mapleflow commented 7 years ago

bot 是阻塞进程,你需要 threading.Thread 处理下,然后才能传递给 Flask 最好不要直接传递的

ifour333 commented 7 years ago

多用户不就不能实现了

mapleflow commented 7 years ago

一样的道理,每个用户登录后才能启动 bot 生成该用户对应的 qr 和 pkl 文件。 一个用户一个 bot 。

ifour333 commented 7 years ago

@mapleflow 请教下 上面的代码怎么改能跑通? 扫码登录然后后去好友

mapleflow commented 7 years ago

一个用户一个 bot 对应不同的文件,通过消息队列或者 cache。 加好友 api cache.set('add_friends', 1, timeout=5) bot 轮询,需要重写 _listen 方法 cache.get('add_friends') => add_friends

ifour333 commented 7 years ago

@mapleflow 完全看不懂了哈哈 一直用Mojo-Webqq这个项目只是没python那么稳定