Задать вопрос
Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (2)

Наибольший вклад в теги

Все теги (23)

Лучшие ответы пользователя

Все ответы (80)
  • Как сделать проверку на закрытие кода?

    @Alexa2007
    Вообщем, мне нужен код

    Он тебе не нужен! Но давай сначала.
    Юзер нажимает старт и в это время информация о нем должна попасть в базу данных юзеров. А когда тебе надо остановить сервер ты берешь эту базу и всем по очереди начинаешь писать что ты закрыся. Это ответ на твой вопрос.
    Но это так не делается. Никому не интересно, что твой бот сейчас не работает и согласись если у тебя нет конкретной задачи и ты просто тренируешься то и тысячь посещений в минуту у твоего бота тоже не будет. А вот к тому моменту когда твой бот будет настолько крут ты и сам сможешь ответить на твой вопрос. Поэтому не забивай голову ненужной информацией, а лучше подучи питон и набивай своего бота полезным функционалом.
    Вот к примеру в питоне есть такая штука как list, и с его помощью можно делать крутые вещи. К примеру возьмем твоего бота:
    это твой код
    @bot.message_handler(commands=["start"])
    def welcome(message):
      #Сделаем клавиатуру
      markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
      item1 = types.KeyboardButton("Как дела?")
      item2 = types.KeyboardButton("Я знаю что ты вор!")
      item3 = types.KeyboardButton("Есть хочешь?")
      item4 = types.KeyboardButton("А спать хочешь?")
      item5 = types.KeyboardButton("Что-то секретное...")
      markup.add(item1, item2, item5)
      
      bot.send_message(message.chat.id, "Привет, {0.first_name}!\nЯ - <b>{1.first_name}</b>. Напиши мне что-то, может познакомимся, да?".format(message.from_user, bot.get_me()),
        parse_mode='html', reply_markup=markup)

    А это тоже самое только с использованием list:
    start_page_buttons=["Как дела?","Я знаю что ты вор!","Есть хочешь?","А спать хочешь?", "Что-то секретное..."]
    
    def start_buttons_create():
        keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
        for _ in start_page_buttons:
            keyboard.add(_)
        return keyboard
    
    
      
      bot.send_message(message.chat.id, "Привет, {0.first_name}!\nЯ - <b>{1.first_name}</b>. Напиши мне что-то, может познакомимся, да?".format(message.from_user, bot.get_me()),
        parse_mode='html', reply_markup=start_buttons_create())

    И самое главное это то, что ту функцию которую я написал, ты можешь перенести в отдельный файл и в результате у тебя не будет оооооочень длинный код. А будет несколько файлов, каждый из которых отвечает за свой функционал
    Ответ написан
    3 комментария
  • В чем может быть ошибка?

    @Alexa2007
    pip uninstall telebot
    pip install pytelegrambotapi
    Ответ написан
    4 комментария
  • Почему не меняется адрес с прокси?

    @Alexa2007
    url = f"https://yandex.ru/search/?lr=39&text=купить самокат" - Ростов
    url = f"https://yandex.ru/search/?lr=22&text=купить самокат" - Калининград
    Ответ написан
    Комментировать
  • Как получить количество файлов в ТЕКУЩЕМ каталоге (где был запущен скрипт)?

    @Alexa2007
    import os
    
    path, dirs, files = next(os.walk(os.getcwd()))
    print(files)
    file_count = len(files)
    print(file_count)
    Ответ написан
    Комментировать
  • Как использовать значение из кортежа в качестве атрибута?

    @Alexa2007
    class emp: 
        name='Harsh'
        salary='25000'
        def show(self): 
            print (self.name) 
            print (self.salary) 
    e1 = emp() 
    # Use getattr instead of e1.name 
    print (getattr(e1,'name')) 
      
    # returns true if object has attribute 
    print (hasattr(e1,'name')) 
      
    # sets an attribute 
    setattr(e1,'height',152) 
      
    # returns the value of attribute name height 
    print (getattr(e1,'height')) 
      
    # delete the attribute 
    delattr(emp,'salary')
    Ответ написан
    Комментировать