취미코딩/python
koNLPy 설치할 때 난관들
ahmad
2021. 10. 30. 16:50
자연어 분석을 위해 koNLPy를 설치할 때 제대로 실행되지 않을 때가 많다.
내가 겪은 오류를 바탕으로 정리해봤다.
java.nio.file.InvalidPathException: Illegal char <*> at index...
가장 자주 겪은 오류인데, koNLPy는 자바를 사용하는데, 파이썬에서 자바를 쓸 수 있게 해주는 JPype의 버전 오류다. JPype는 구글링을 해보면 여기로 들어가서 자신에게 맞는 버전을 받으라고 안내하는 글이 많다. 파일을 받아서 pip로 파일을 설치하면 된다.
다만 이게 끝이 아니다. 보통 자신의 python 버전을 고려해서 받기만 하면 된다고 하는데, python 3.8의 경우 JPype는 1.3.0, 1.2.0, 1.1.2 등이 모두 3.8을 지원한다. 그런데 내 경우에는 1.1.2만 위 에러를 없애줬다. 나머지는 코드가 실행을 끝내지 않거나 다른 오류를 토해냈다. 아마 JDK 버전에 따라 궁합이 다른 모양이다. 내 경우에는 JDK를 최신 버전으로 설치하고 JPype 버전을 하나씩 낮춰가면서 찾았다.
AttributeError: module 'tweepy' has no attribute 'StreamListener'
koNLPy 패키지 중 하나인 tweepy의 버전이 v4일때 나타나는 현상이다. tweepy는 버전 4부터 StreamListener를 Stream에 통합시켰다. 그래서 tweepy를 버전 3으로 재설치해야한다. 마지막 버전이 3.10.0이다.
koNLPy는 가상환경 구축이 어느 정도 되면 pip freeze를 통해 꼭 패키지 정보를 저장해놓는 편이 좋을 것 같다. koNLPy가 업데이트를 활발히 하는 편은 아니기도 하고, 위와 같은 에러를 여러번 겪으면 굉장히 피곤하다.