안녕하세요. "생각의 웹"입니다.




python 2.7.x 버전으로 twitter open API로 가져온 data를 자연어 처리 (Natural Language Processing - 이하 NLP)로 가공해 보여주는 프로젝트 수행 중 

제 windows 8.1 64bit 버전에서 관련 라이브러리 설치 중 발생한 문제로 

골머리 앓았던 사례와 그 해결 방법을 공유하고자 이렇게 글을 적습니다.


먼저 환결 설정에 필요한 도구들과 라이브러리는 다음과 같습니다.


python-2.7.msi (32 bit)

numpy-1.9.2-win32-superpack-python2.7.exe

nltk-3.0.1.win32.exe

PyYAML-3.11.win32-py2.7.exe

ez_setup.py

pycharm-community-4.0.5.exe


(주의!) NLTK 의 호환성 문제로 인해 64bit OS라도 32bit 버전을 설치해야만 합니다.


설치 순서는 다음과 같습니다.

1) python-2.7.msi 설치

2) ez_setup.py 파일을 python 설치 경로(e.g. C:\Python27)에 복사 후 terminal (cmd.exe)에서 'python ez_setup.py' 수행

3) Scripts 폴더로 이동해 'easy_install pip' 수행

4) 관리자 권한으로 numpy-1.9.2-win32-superpack-python2.7.exe 설치

5) 관리자 권한으로 nltk-3.0.1.win32.exe 설치

6) 관리자 권한으로 PyYAML-3.11.win32-py2.7.exe 설치


설치가 모두 정상 완료된 후 pip를 통해 python 모듈을 설치할 때 발생하며 다음과 같은 인코딩 에러가 출력됩니다.


UnicodeEncodeError: 'charmap' codec can't encode characters ...   


안타깝게도 이 메세지를 기반으로 다양한 검색을 통해 해결방법을 모색했지만 결국 해결책을 찾을 수 없었습니다.


그러던 중 지인 중 하나가 python IDE로 pycharm를 추천하길래 혹시나 하는 마음에 pycharm IDE을 설치하게 되었고 

이 도구 안에서도 모듈 설치 기능을 제공함을 알게 되었습니다.


7) pycharm-community-4.0.5.exe 설치


pycharm 설치가 완료되고 수행하면 설치된 python 버전과 python 프로젝트를 만들 수 있는 시작화면이 나옵니다.

임의의 프로젝트를 생성하여 작업환경으로 진입합니다.


pycharm은 Intellij IDE 기반으로 만들어진 IDE라 eclipse IDE와는 메뉴 구성이 달라 어색할 수도 있습니다.

모듈을 추가하기 위해서는 File > Settings 메뉴로 진입합니다.



좌측 메뉴 항목에서 Project: ... / Project Interpreter 를 선택하면 설치된 패키지들이 나열됩니다.

우측 + - 버튼을 통해 패키지를 추가, 삭제 할 수 있는데 이렇게 설치하게 되면 terminal에서 발생하는 에러 없이 패키지 설치가 가능합니다.




사족으로 pip 설치 시 발생하는 원인은 모듈이 설치되는 경로에 한글 경로가 포함되기 때문인 것으로 보입니다.

혹시나 이런 문제로 인해 저와 같은 삽질하시는 분들께 도움이 되길 바라는 마음으로 공유합니다.


감사합니다.



  1. 파이팅건맨 2015.03.24 21:40

    NLP라...NLP라... 트위터의 내용을 그렇게 처리해서 과연 무엇을 보고, 보여주고자 하는 것인지 궁금해요~. 내 언젠가 찾아가서 구경하리다.^^

  2. 생각의 웹 WebofThink 2015.03.24 22:48 신고

    NLP 처리해서 숙제합니다 ^^

+ Recent posts