Да, конечно, вы можете реализовать рассылку сообщений в несколько чатов с помощью бота на Python с использованием библиотеки Pyrogram. Вот пример того, как можно это сделать, чтобы минимизировать риск блокировки со стороны Telegram.
1. **Создайте бота** и получите токен.
2. **Убедитесь, что вы используете задержки** между сообщениями, чтобы избежать спама.
3. **Настройте обработчик команд**, который будет отвечать за рассылку сообщений.
Ниже приведён пример кода, который показывает, как отправить сообщение сразу в несколько чатов с использованием Pyrogram:
```python
from pyrogram import Client, filters
import asyncio
# Создание экземпляра клиента
app = Client("my_bot", bot_token="YOUR_BOT_TOKEN")
# Список ID чатов, в которые будет отправлено сообщение
chat_ids = [
-1001234567890, # Пример ID группы
-1009876543210, # Другой ID группы
123456789 # ID пользователя
]
@app.on_message(filters.command("send_message") & filters.user(YOUR_USER_ID))
async def send_message(client, message):
text_to_send = "Привет всем!" # Текст сообщения
for chat_id in chat_ids:
await client.send_message(chat_id, text_to_send)
await asyncio.sleep(1) # Задержка в 1 секунду между сообщениями
await message.reply("Сообщение успешно отправлено во все чаты!")
app.run()
```
### Пояснения к коду:
- **chat_ids**: Список идентификаторов чатов, куда вы хотите отправить сообщения. Замените эти ID на ваши собственные.
- **задержка (await asyncio.sleep(1))**: Используется для того, чтобы замедлить отправку сообщений и уменьшить риск блокировки. Вы можете настроить задержку в зависимости от ваших нужд.
- **YOUR_USER_ID**: Замените это значение на свой ID пользователя, чтобы команда могла использоваться только вами.
### Рекомендации:
1. **Не спамьте**: Убедитесь, что вы не отправляете слишком много сообщений в короткий промежуток времени.
2. **Используйте обратную связь**: Убедитесь, что пользователи могут отписаться от ваших сообщений.
3. **Обработайте возможные ошибки**: Добавьте обработку исключений, чтобы ваш бот не падал при возникновении ошибки.
С таким подходом вы сможете реализовать функциональность рассылки сообщений в несколько чатов.