Сразу оговорюсь что с асинхронностью я столкнулся впервые. У меня есть функции библиотеки telethon (которая работает асинхронно). Главная функция выглядит так:
class Main_telegram():
async def main(self, url):
channel = await client.get_entity(url) #берём нужный канал
users = await dump_all_participants(channel) #берём людей, находящихся на канале
return users
И мне нужно вызвать функцию main этого класса в другом классе. Вот как я это реализовал:
class Telegram:
def __init__(self) -> None:
self.cv_telegram = Main_telegram()
def working(self, list_url):
list_cv_in_groups = []
url_groups = list_url
for url_group in url_groups:
list_cv_telegram = self.cv_telegram.main(url_group)
list_cv_in_groups.append(list_cv_telegram)
cv_telegram = Telegram()
Но когда я вызываю функцию main программа не заходит в эту функцию в другом классе, а создаёт объект coroutine object MainTelegram.main . Я почитал документацию по этому объекту, но так и не понял, как с ним работать. Из этого и мой вопрос. Как мне вызвать асинхронную функцию из обычной функции и возможно ли это вообще?