• Как в telethon пригласить человека в канал по его чат_айди?

    @ya_ne_znau
    from telethon.tl.functions.channels import InviteToChannelRequest
    client(InviteToChannelRequest(
             channel=<channel_id>
             users = ['<username>']
    ))

    отсюда
    Ответ написан
    Комментировать
  • Как заменить фото бота в телеграм?

    @twistfire92
    Python backend developer
    Вот поиграйтесь с этим кодом.
    найдите картинки соответствующие и просмотрите как все это работает в примере ниже

    import telebot
    from telebot import types
    
    token = '' 
    
    bot = telebot.TeleBot(token)
    
    @bot.message_handler(commands=['start'])
    def send_welcome(message):
    	photo = open('racoon.jpg', 'rb')
    	markup = create_markup()
    	bot.send_photo(message.chat.id, photo, caption='Енот', reply_markup=markup)
    
    @bot.callback_query_handler(func=lambda c: True)
    def change_photo(call):
    	markup = create_markup()
    	chat_id=call.message.chat.id
    	message_id=call.message.message_id
    	if call.data == 'racoon':
    		photo = open('racoon.jpg', 'rb')
    		media = types.InputMediaPhoto(photo, caption='Енот')
    		bot.edit_message_media(media=media, chat_id=chat_id, message_id=message_id, reply_markup=markup)
    		
    	elif call.data == 'fox':
    		photo = open('fox.jpg', 'rb')
    		media = types.InputMediaPhoto(photo, caption='Лиса')
    		bot.edit_message_media(media=media, chat_id=chat_id, message_id=message_id, reply_markup=markup)
    		
    	elif call.data == 'rabbit':
    		photo = open('rabbit.jpg', 'rb')
    		media = types.InputMediaPhoto(photo, caption='Заяц')
    		bot.edit_message_media(media=media, chat_id=chat_id, message_id=message_id, reply_markup=markup)
    		
    
    def create_markup():
    	markup = types.InlineKeyboardMarkup()
    	button1 = types.InlineKeyboardButton(text='Енот', callback_data='racoon')
    	button2 = types.InlineKeyboardButton(text='Лиса', callback_data='fox')
    	button3 = types.InlineKeyboardButton(text='Заяц', callback_data='rabbit')
    	markup.row(button1, button2, button3)
    	return markup
    
    bot.polling()


    Результат этого кода (Все это - одно сообщение, в котором перерисовывалась картинка):

    5f72cdac977d9702675906.png
    5f72cdc24d779354601542.png
    5f72cddaf2294374777349.png

    Единственный момент - это если будете менять зайца на зайца например, то код упадет в ошибку.
    Но это уже другая проблема))
    Ответ написан
    Комментировать