Задача: Есть Telegram-канал с ID 1868527080. В этот канал отправляется сообщение: "Для начисления нажмите на кнопку:". Под сообщением размещена инлайн-кнопка с текстом "получить". Требуется: Необходимо автоматизировать процесс так, чтобы при появлении этого сообщения в аккаунте Telegram, бот автоматически нажимал на эту кнопку один раз. Можете показать код есль не сложно
pip install telethon from telethon import TelegramClient, events from telethon.tl.types import InputPeerButton, InlineKeyboardMarkup # Замените эти значения своими api_id = 'YOUR_API_ID' api_hash = 'YOUR_API_HASH' phone_number = 'YOUR_PHONE_NUMBER' channel_id = 1868527080 # ID вашего канала client = TelegramClient('session_name', api_id, api_hash) @client.on(events.NewMessage(chats=channel_id)) async def handler(event): if event.message.message == "Для начисления нажмите на кнопку:": # Проверьте наличие инлайн-кнопок if event.message.reply_markup: # Получите первую кнопку из инлайн-кнопок button = event.message.reply_markup.rows[0].buttons[0] await client.send_message(channel_id, button) print("Кнопка нажата!") async def main(): await client.start() print("Бот запущен.") await client.run_until_disconnected() if __name__ == "__main__": import asyncio asyncio.run(main()) Python from telethon import TelegramClient, events from telethon.tl.types import InputPeerButton, InlineKeyboardMarkup # Замените эти значения своими api_id = 'YOUR_API_ID' api_hash = 'YOUR_API_HASH' phone_number = 'YOUR_PHONE_NUMBER' channel_id = 1868527080 # ID вашего канала client = TelegramClient('session_name', api_id, api_hash) @client.on(events.NewMessage(chats=channel_id)) async def handler(event): if event.message.message == "Для начисления нажмите на кнопку:": # Проверьте наличие инлайн-кнопок if event.message.reply_markup: # Получите первую кнопку из инлайн-кнопок button = event.message.reply_markup.rows[0].buttons[0] await client.send_message(channel_id, button) print("Кнопка нажата!") async def main(): await client.start() print("Бот запущен.") await client.run_until_disconnected() if __name__ == "__main__": import asyncio asyncio.run(main())
1. Получите API ID и API Hash: Вам нужно зарегистрироваться на my.telegram.org (https://my.telegram.org/) и создать приложение, чтобы получить эти данные. 2. Замените параметры: Вставьте свои значения для api_id, api_hash и phone_number. 3. Запустите скрипт: Сохраните код в файл (например, bot.py) и запустите его с помощью Python. ▎Обратите внимание • Этот код будет работать только с инлайн-кнопками, которые отправляются в сообщениях канала. • Убедитесь, что ваш бот имеет необходимые разрешения для доступа к сообщениям канала. • Использование ботов в Telegram может нарушать правила использования платформы, поэтому будьте осторожны и соблюдайте правила Telegram. Если у вас возникнут вопросы или потребуется дополнительная помощь, не стесняйтесь спрашивать!