본문 바로가기
Programming/AI

도커에 우분투+파이썬3+beautifulsoup+PhantomJS + Selenium 환경 설치하기

by 제타 2018. 6. 24.
반응형

파이썬으로 웹 데이터 크롤링을 위한 환경 세팅을 위해 웹페이지 없는 브라우저 PhantomJS와 Selenium 설치를 하겠습니다.


도커 설치는 기존 포스팅을 참조부탁드리며 이번 포스팅의 순서는 대략 다음과 같습니다.


1. 우분투 이미지 다운로드

2. 파이썬3, 파이썬3-pip 설치

3. 셀레니움 설치

4. beautifulsoup4 설치

5. PhantomJS 설치

6. 도커 콘테이너 commit


먼저 도커를 실행하여 Docker pull ubuntu:16.04 버전을 내려받습니다.




내려받기를 완료하였으면 이제 방금 다운받은 이미지에 들어갑니다.


$ docker run -it ubuntu:16.04



이제 apt-get update를 하여 업데이트를 해주고 파이썬3와 파이썬3-pip을 설치 하겠습니다.


먼저 apt-get update 명령어를 입력하여 업데이트를 하겠습니다.



완료 후에는 다음 명령어를 통해 설치를 진행하겠습니다.


root@409b85044687:/# apt-get install -y python3 python3-pip  



그리고 selenium을 설치하겠습니다


root@409b85044687:/# pip3 install selenium



셀레니움은 PhantomJS, 크롬 등의 브라우저에 접근할 수 있는 파이썬의 모듈입니다.


전 포스팅에서는 아나콘다에서 설치했었지만 이 포스팅으로 우분투를 설치하여 컨테이너를 바꾼 것이기 때문에 beautifulsoup4도 새로 설치하겠습니다.


root@409b85044687:/# pip3 install beautifulsoup4



이제 PhantomJS를 설치하겠습니다.


#먼저 wget과 libfontconfig를 설치합니다.

root@409b85044687:/# apt-get install -y wget libfontconfig



#그리고 폴더를 하나 생성하고 그 폴더로 이동하겠습니다.

root@409b85044687:/# mkdir -p /home/root/src && cd $_



#wget 명령어를 활용해서 phantomJS를 가져오겠습니다.

root@409b85044687:/home/root/src# wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2



#tar 압축을 해제합니다.

root@409b85044687:/home/root/src# tar jxvf phantomjs-2.1.1-linux-x86_64.tar.bz2



#압축을 풀었으면 그 폴더로 이동하겠습니다.

cd phantomjs-2.1.1-linux-x86_64/bin/


#내용을 복사하겠습니다. 

cp phantomjs /usr/local/bin/


#마지막으로 한국어 폰트를 설치하겠습니다.

apt-get install -y fonts-nanum*


#이제 설치가 끝났으니 exit명령어를 통해 빠져나와서 commit을 하겠습니다.


docker ps -a 명령어를 통해 가장 상위에 있는 콘테이너id를 알아낸 후에 


docker commit <콘테이너ID> ubuntu-phantomjs 로 커밋을 하면 완료입니다.



그리고 실행은 다음과 같은 명령어로 로컬 디스크를 마운트하여 실행합니다.


docker run -i -t -v /c/Users/username/ai:/ai  -e  ko_KR.UTF-8 -e  PYTHONIOENCODING=utf_8 ubuntu-phantomjs /bin/bash



반응형