Задать вопрос
  • Как сделать, чтобы тг бот работал бесконечно на pythonanywhere?

    RyanovskY
    @RyanovskY
    если телебот то запуск бота делай так:
    asyncio.run(bot.polling(none_stop=True))

    import telebot
    from telebot import types
    import sqlite3
    import csv
    from telebot.types import InlineKeyboardButton, InlineKeyboardMarkup, CallbackQuery
    import colorama
    import random
    from colorama import Fore, init, Style
    from telebot import apihelper
    import asyncio
    import threading
    import time
    import sys
    
    init(autoreset=True)
    colorama.init()
    
    # цвета
    re = "\033[1;31m"  # красный
    gr = "\033[1;32m"  # зелёный
    cy = "\033[1;36m"  # циановый
    pnk = "\033[1;35m"  # розовый
    blu = "\033[1;34m"  # Синий
    ylw = "\033[1;33m"  # Жёлтый
    pur = "\033[1;35m"  # Фиолетовый
    
    # рандомный цвет
    colors = ["\033[1;31m", "\033[1;32m", "\033[1;33m", "\033[1;34m", "\033[1;35m", "\033[1;36m"]
    random_color = random.choice(colors)
    
    
    def banner():
        print(random_color + '''
            ██████╗ ██╗   ██╗ █████╗ ███╗   ██╗ ██████╗ ██╗   ██╗███████╗██╗  ██╗██╗   ██╗
            ██╔══██╗╚██╗ ██╔╝██╔══██╗████╗  ██║██╔═══██╗██║   ██║██╔════╝██║ ██╔╝╚██╗ ██╔╝
            ██████╔╝ ╚████╔╝ ███████║██╔██╗ ██║██║   ██║██║   ██║███████╗█████╔╝  ╚████╔╝ 
            ██╔══██╗  ╚██╔╝  ██╔══██║██║╚██╗██║██║   ██║╚██╗ ██╔╝╚════██║██╔═██╗   ╚██╔╝  
            ██║  ██║   ██║   ██║  ██║██║ ╚████║╚██████╔╝ ╚████╔╝ ███████║██║  ██╗   ██║   
            ╚═╝  ╚═╝   ╚═╝   ╚═╝  ╚═╝╚═╝  ╚═══╝ ╚═════╝   ╚═══╝  ╚══════╝╚═╝  ╚═╝   ╚═╝   ''')
    
    
    banner()
    
    
    # Создание и запуск потока
    cursor_thread = threading.Thread(target=spinning_cursor)
    cursor_thread.start()
    
    while True:
        # Создаем экземпляр бота
        bot = telebot.TeleBot('6174258')
    
        def handle_bad_gateway_error(func):
            def wrapper(*args, **kwargs):
                try:
                    return func(*args, **kwargs)
                except telebot.apihelper.ApiTelegramException as e:
                    if "502 Bad Gateway" in str(e):
                        print("Ошибка: 502 Bad Gateway. Попробуйте еще раз позже.")
                    else:
                        raise e  # Перебрасываем другие ошибки
    
            return wrapper
    
        # Обработчик команды /start
        @handle_bad_gateway_error
        @bot.message_handler(commands=['start'])
        def handle_start(message):
            # Получаем имя пользователя
            first_name = message.from_user.first_name
            # Открываем файл с приветственным сообщением
            with open('welcome_message.txt', 'r', encoding='utf-8') as file:
                welcome_message = file.read()
            # Отправка фотографии с текстом из файла
            with open('welcome_photo.jpg', 'rb') as photo:
                markup = types.ReplyKeyboardMarkup(row_width=2, resize_keyboard=True)
                markup.add(*server.keys())
                bot.send_photo(message.chat.id, photo, caption=f'Привет,{first_name}! \n{welcome_message}', reply_markup=markup)
                insert_user(str(message.chat.id), str(message.from_user.username), str(f'{message.text}'))
                print(ylw + str(message.chat.id), blu + str(message.from_user.username), pnk + str(f'{message.text}'))
    
    
        # Запуск бота
        asyncio.run(bot.polling(none_stop=True))
    Ответ написан
    4 комментария