Для написания скрипта, который будет пересылать сообщения в чужих ботов в Python, можно использовать библиотеку python-telegram-bot
. Эта библиотека предоставляет удобный интерфейс для работы с Telegram Bot API.
Первым шагом необходимо установить библиотеку python-telegram-bot
. Выполните команду pip install python-telegram-bot
в командной строке, чтобы установить ее.
Далее, создайте новый файл Python и импортируйте необходимые модули:
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters
Затем, создайте функцию-обработчик для команды, которую будете использовать для пересылки сообщений. Например, давайте создадим команду /forward
:
def forward(bot, update): chat_id = update.message.chat.id message_id = update.message.message_id other_bot_token = 'TOKEN' # замените на токен бота, которому вы хотите переслать сообщение forward_chat_id = 'CHAT_ID' # замените на идентификатор чата, куда вы хотите переслать сообщение other_bot = Updater(other_bot_token) other_bot.bot.forward_message(chat_id=forward_chat_id, from_chat_id=chat_id, message_id=message_id)
В этой функции мы получаем chat_id
и message_id
и используем метод forward_message
для пересылки сообщения в другой чат. Здесь other_bot_token
- это токен бота, которому вы хотите переслать сообщение, и forward_chat_id
- идентификатор чата, куда нужно переслать сообщение.
Теперь, создайте функцию-обработчик, которая будет вызываться при получении нового сообщения, и привяжите ее к обработчику сообщений:
def echo(bot, update): bot.forwardMessage(chat_id='CHAT_ID', from_chat_id='YOUR_CHAT_ID', message_id=update.message.message_id) def main(): other_bot_token = 'TOKEN' # замените на токен вашего бота updater = Updater(other_bot_token) dp = updater.dispatcher dp.add_handler(CommandHandler('forward', forward)) dp.add_handler(MessageHandler(Filters.text, echo)) updater.start_polling() updater.idle() if __name__ == '__main__': main()
Эта функция-обработчик пересылает полученное сообщение в чат с идентификатором CHAT_ID
, который вы должны заменить на идентификатор вашего чата.
Наконец, добавьте привязку функции-обработчика к команде /forward
с помощью CommandHandler
, а также привяжите функцию-обработчик echo
к обработчику сообщений с помощью MessageHandler
. Запустите бота с помощью метода start_polling()
.
Данный скрипт будет пересылать все полученные сообщения в заданный вами чат. Вы можете дополнительно настроить скрипт, добавив проверки и другие функции в соответствии с вашими потребностями.