@mynameiswisethanyesturday
Python developer

Как устранить ошибку в потоках (билиотека telethon или pytelegrambotapi)?

В боте работающем на библиотеке pytelegrambotapi пытаюсь с помощью библиотеки telethon найти id (путем добавления в контакты). Когда я вызываю, в отдельном файле telethon то то все работает. Когда в боте pytelegrambotapi через кнопку и класс пытаюсь вызвать метод из скрипта с библиотекой telethon , то происходит ошибка, можно ли её устранить?

class GetIdbyPhone():
    @staticmethod
    def getIdUserByPhone(phone):
        client = TelegramClient(username, api_id, api_hash)
        result = client(functions.contacts.ImportContactsRequest(
            contacts=[types.InputPhoneContact(
                client_id=0,
                phone=phone,
                first_name='Alex',
                last_name=""
            )]
        ))

        for i in result.users:
            data = str(i.id)
        return data

    @classmethod
    def tryThread(cls, phone):
        loop.create_task(cls.getIdUserByPhone(phone))
        loop.run_until_complete()


Ошибка после выполнения
5eb95ef4e97d9939878277.png

RuntimeError: There is no current event loop in thread 'WorkerThread8'.
  • Вопрос задан
  • 142 просмотра
Пригласить эксперта
Ответы на вопрос 1
@agent_2203
from asyncio import set_event_loop, new_event_loop
set_event_loop(new_event_loop())
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы