Я пытаюсь разобраться с модулем Python asyncio и у меня есть простой скрипт, который работает нормально, но когда я компилирую его с помощью PyInstaller и запускаю исполняемый файл, который он создает, я получаю ошибку ImportError, которую не могу понять, какчинить.Я провел несколько часов в интернете, чтобы выяснить, сталкивался ли кто-то еще с такой же проблемой, но не смог ничего найти, и я не понимаю, что является причиной проблемы.
Сценарий, который яКомпиляция выглядит следующим образом:
import requests
import asyncio
async def main():
loop = asyncio.get_event_loop()
futures = [
loop.run_in_executor(
None,
requests.get,
'http://google.com'
)
for i in range(5)
]
for response in await asyncio.gather(*futures):
print(response.status_code)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
Команда, которую я использую для компиляции сценария:
pyinstaller -F async_test.py
И исключение во время выполнения, которое выдается при запуске исполняемого файла, который создает PyInstaller:1009 *
Traceback (most recent call last):
File "asyncio\__init__.py", line 18, in <module>
ImportError: cannot import name '_overlapped'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "Miscellaneous\async_test.py", line 2, in <module>
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
File "c:\users\username\appdata\local\programs\python\python36\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "asyncio\__init__.py", line 20, in <module>
OSError: [WinError 10022] An invalid argument was supplied
[13048] Failed to execute script async_test
Я использую Python 3.6.4 и PyInstaller 3.4
Если бы кто-то мог пролить свет на то, что проблема и как ее исправить, я был бы очень благодарен.