[Python] too many file descriptors in select
문제 인식
웹 데이트 크롤링을 연습하다가 해당 에러가 나타났다.
too many file descriptors in select()
해결방법
Windows의 asyncio루프에서는 기본적으로 64개의 소캣 만 사용할 수 있기 때문에 이 문제가 발생하는 것이다.
ProactorEventLoop 를 사용하면 이 문제를 해결할 수 있다.
import asyncio, sys
if sys.platform == 'win32':
loop = asyncio.ProactorEventLoop()
asyncio.set_event_loop(loop)
loop = asyncio.get_event_loop()
loop.run_until_complete(crawler.main())