Ошибка времени выполнения в Twint : Этот цикл событий уже запущен

#python

Вопрос:

Я использую блокнот jupyter и запускаю twint.

Код

 c = twint.Config()
c.Username = 'twitter'
c.Limit = 20
twint.run.Followers(c)
 

Приведенные выше команды приводят к ошибке во время выполнения, связанной (я полагаю) с кодом, пытающимся создать 2 асинхронных цикла событий.
Обратная связь выглядит следующим образом:

 RuntimeError                            Traceback (most recent call last)
<ipython-input-4-4713cc05fb59> in <module>()
----> 1 twint.run.Favorites(c)

~/coding/tools/twint/twint/run.py in Favorites(config)
    119 def Favorites(config):
    120     config.Favorites = True
--> 121     run(config)
    122 
    123 def Followers(config):

~/coding/tools/twint/twint/run.py in run(config)
    115 
    116 def run(config):
--> 117     get_event_loop().run_until_complete(Twint(config).main())
    118 
    119 def Favorites(config):

~/.pyenv/versions/3.6.5/lib/python3.6/asyncio/base_events.py in run_until_complete(self, future)
    453         future.add_done_callback(_run_until_complete_cb)
    454         try:
--> 455             self.run_forever()
    456         except:
    457             if new_task and future.done() and not future.cancelled():

~/.pyenv/versions/3.6.5/lib/python3.6/asyncio/base_events.py in run_forever(self)
    407         self._check_closed()
    408         if self.is_running():
--> 409             raise RuntimeError('This event loop is already running')
    410         if events._get_running_loop() is not None:
    411             raise RuntimeError(

RuntimeError: This event loop is already running
 

Ответ №1:

Я нашел решение для ноутбуков Jupyter с помощью nest_async

Просто сделайте

 pip install nest_asyncio
 

И добавьте эти строки.

 import nest_asyncio
nest_asyncio.apply()
 

Комментарии:

1. Я запустил эти строки, и я продолжаю получать это сообщение: КРИТИЧЕСКИЙ:корень:twint.запуск:Twint:Канал:nodataвыражающее значение: строка 1 столбец 1 (символ 0) спит в течение 64,0 секунд. Количество секунд продолжает увеличиваться.