Для использования фильтров Pyrogram для получения сообщений из определенного списка каналов, можно создать список идентификаторов каналов (chat_id) и использовать его в методе listen() с параметром filters=Filters.chat(chat_ids). Пример:
```python
from pyrogram import Client, Filters
app = Client("my_account")
channel_ids = [-100123456789, -100987654321] # список идентификаторов каналов
@app.on_message(Filters.chat(channel_ids))
def handle_messages(app, message):
print(message.text)
app.run()
```
Чтобы улучшить программное API и обеспечить возможность прослушивания всех каналов, можно модифицировать метод handle_messages() таким образом, чтобы в нем выполнялось обращение к каждому каналу из списка и обработка сообщений от каждого канала. Пример:
```python
from pyrogram import Client
app = Client("my_account")
channel_ids = [-100123456789, -100987654321] # список идентификаторов каналов
@app.on_message()
def handle_messages(app, message):
for channel_id in channel_ids:
if message.chat.id == channel_id:
print(message.text)
break
app.run()
```
Таким образом, в данном примере программа будет прослушивать сообщения из всех каналов, указанных в списке channel_ids.