RuntimeError: set_wakeup_fd работает только в основном потоке главного интерпретатора при добавлении задания proxybroker в django-apscheduler

Я пытался использовать django-apscheduler для добавления задания proxybroker. Без проблем запустил test_proxybroker.py и получил возвращенные прокси. Но я получил эту ошибку при запуске команды django-apscheduler.

set_wakeup_fd работает только в основном потоке главного интерпретатора

.
#test_proxybroker.py
import asyncio
from proxybroker import Broker

# https://proxybroker.readthedocs.io/en/latest/examples.html
def broke():
    async def show(proxies):
        while True:
            proxy = await proxies.get()
            if proxy is None: break
            print('Found proxy: %s' % proxy)
    try:
        loop = asyncio.get_event_loop()
    except:
        new_loop = asyncio.new_event_loop()
        asyncio.set_event_loop(new_loop)
        loop = asyncio.get_event_loop()

    proxies = asyncio.Queue()
    broker = Broker(proxies)
    tasks = asyncio.gather(
        broker.find(types=['HTTP', 'HTTPS'], limit=10),
        show(proxies))



    loop.run_until_complete(tasks)


#runapscheduler.py. (the django command file)
...
def test_job():
    try:
        broke()
    except:
        pass
...
Вернуться на верх