• Python telebot как после перехода из первого файла во второй, снова вернуться в первый файл?

    @KingBotReg
    На примере файла main2_example.py выйти в файл bots.py в функцию func
    import telebot
    import bots # Импортируем файл 
    
    from telebot import types
    
    
    
    bot = telebot.TeleBot('')
    @bot.message_handler(content_types=['text','photo','audio','media','video'])
    
    def menu_example(message):
    
            markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
            btn1 = types.KeyboardButton('Один дома')
            btn2 = types.KeyboardButton('Звездные войны')
            btn3 = types.KeyboardButton("Шрек", )
            markup.add(btn3, btn2, btn1)
            bot.send_message(message.chat.id, text="Начнем же, {0.first_name}!".format(message.from_user), reply_markup=markup)
            bot.send_message(message.chat.id, "Угадай, откуда эта мелодия?")
            audio1 = open("Неизвестная песня.mp3", 'rb')
            bot.send_audio(message.chat.id, audio1)
            bot.register_next_step_handler(message, batl)
    def batl(message):
            if message.text == "Шрек" or message.text == "Один дома":
                bot.send_message(message.from_user.id, "А вот и не угадал")
                menu_example(message)
    
            elif message.text == "Звездные войны":
                bot.send_message(message.from_user.id, "Умничка!!!")
                bots.func(message) # Переход к функции func из файла bots.py
    
    
    bot.polling(none_stop=True, interval=0)
    Ответ написан
    Комментировать
  • Как создать список из картинок и текста и выводить рандомным способом?

    @KingBotReg
    Вот Код
    import telebot
    from telebot import types  # для указание типов
    from datetime import datetime
    import config
    import random
    
    bot = telebot.TeleBot('')
    
    
    @bot.message_handler(commands=['start'])
    def start(message):
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
        btn = types.KeyboardButton("")
        markup.add(btn)
        bot.send_message(message.chat.id,
                         text="Привет, {0.first_name}!\nХочешь узнать своё будущее?\nЖми на всевидящее око \nНо будь осторожен,ведь чем меньше знаешь тем крепче спишь❗".format(
                             message.from_user), reply_markup=markup)
    
    
    @bot.message_handler(content_types=['text', 'photo'])
    def func(message):
        if (message.text == ""):
            markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
            btn1 = types.KeyboardButton("")
            markup.add(btn1)
            random_text = ['Текст 1','Текст 2','Текст 3','Текст 4'] # Добавляйте текста сколько нужно
            random_img = ['img/1.png', 'img/2.png', 'img/3.png', 'img/4.png'] # Добавляйте картинок сколько нужно
            photo = open(random.choice(random_img), 'rb')
            bot.send_photo(message.chat.id, photo, caption=random.choice(random_text))
    
    
    bot.polling(none_stop=True)
    Ответ написан
    1 комментарий
  • Как отправить сообщение от бота определённому человеку по id (создателю), через библиотеку telebot?

    @KingBotReg
    Вот пример Кода
    import telebot
    
    
    bot = telebot.TeleBot('token')
    
    
    @bot.message_handler(commands=['start'])
    def start_function(message):
        chat_id = 1000000000 # Сюда помещаем id пользователя кому будет отправлено сообщение
        bot.send_message(chat_id, 'Сюда вставляем текст!')
        
        
    bot.polling(none_stop=True)
    Ответ написан
    Комментировать