如何在一个项目中同时运行Flask应用程序和Long Poll应用程序

时间:2019-02-07 22:36:12

标签: python flask telegram-bot

我有一个Telegram机器人,它由两部分组成:

  1. Web部件与ORM一起在烧瓶上工作
  2. 机器人本身

我只需要一次开始轮询,但是 好像当我尝试运行它时,app.py多次导入bot.py并创建了多个“轮询”

我尝试通过瓶before_first_request调用bot.polling(),将bot.polling()来回移动到应用程序及其处理程序。我不想在这里创建我的ORM模型,因此不想创建其他应用程序

app.py

from flask import Flask
from telebot import TeleBot

app = Flask(__name__) # flask init

bot = TeleBot(os.getenv('TOKEN')) # bot init

# db init

from views import * # importing views into app to run them
from bot import * # importing bot handlers to run them

bot.py

from app import bot

@bot.message_handler() # message handler
def index(m):
    bot.send_message(m.chat.id, 'Hello')

bot.polling() # needs to be run only once

我希望它可以单独并同时工作,并且可以从bot和网站访问我的数据库。

0 个答案:

没有答案