@datareset
развиваюсь.

Бот отвечает только в лс, Aiogram. Что делать?

Проблема появилась после выноса cursor.execute в отдельную функцию с использованием try...except потому что обрывалось соеденение после бездействия. Залит на хостинг pythonanywhere.
Код:
db = mysql.connect(
        host = "хост",
        user = "юзер",
        passwd = "пароль",
        database = "база"
        )
cursor = db.cursor()
def query(sql):
    try:
        cursor.execute(sql)
    except mysql.Error as e:
        print(e.msg)
        mysql.connect(
        host = "хост",
        user = "юзер",
        passwd = "пароль",
        database = "база"
        )
        cursor.execute(sql)

Хэндлер:
@dp.message_handler(text='/info')
async def infoHandler(message: types.Message):
    player = Player(message.from_user.id, message.from_user.username, firstSeen(message.from_user.id))
    await message.answer(player.getInfo(message.from_user.id, message.from_user.username), parse_mode='html')
  • Вопрос задан
  • 141 просмотр
Пригласить эксперта
Ответы на вопрос 1
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
Если соединение потерялось, то возникает эксепшн, в котором вы коннектитесь к бд. Просто делаете астральный коннект, ни к чему этот коннект не привязывая, а дальше пытаетесь использовать курсор, который объявили ранее, ну тот у которого соединение отвалилось. Понимаете к чему я клоню?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 17:06
15000 руб./за проект
19 апр. 2024, в 16:53
1000 руб./за проект
19 апр. 2024, в 16:45
5000 руб./за проект