평범한 이야기들

[Selenium] Ubuntu 20.04 에 셀레니움(셀레늄) 서버 설치 및 사용하기 본문

평범한 개발 이야기/OS

[Selenium] Ubuntu 20.04 에 셀레니움(셀레늄) 서버 설치 및 사용하기

songsariya 2021. 1. 22. 22:53
728x90

 윈도우에 이어서 실제 서버인 Ubuntu 20.04에서 돌리기 위해서 Selenium 서버를 설치를 진행했습니다. 

 

1. 기본 패치키 및 자바 설치

 

 

 먼저 시스템에 필요한 패키지를 설치해야 합니다. 여기서 Xvfb(X virtual frame buffer)는 유닉스 계열 운영 체제(예: 리눅스)를 위한 메모리 내 디스플레이 서버입니다. CLI 환경의 운영체에서 디스플레이 없이 X11 디스플레이 서버 프로토콜을 구현한다고 합니다.

 

$ sudo apt-get update
$ sudo apt-get install -y unzip xvfb libxi6 libgconf-2-4

 또한 자바 8 버전 이상이 서버에 설치되어 있어야 합니다.

$ sudo apt-get install default-jdk

 위 명령어로 설치를 하면 아래와 같이 자바와 함께 다양한 패키지들이 설치됩니다. 저는 자바 11 버전이 설치되는 걸 보실 수 있습니다. 자바 11 버전도 LTS(Long-Term-Support) 이기 때문에 괜찮습니다.

 

Java 설치시 함께 설치되는 패키지 리스트 화면

설치가 되면 명령어를 통해서 자바가 정상적으로 설치되었는지 확인하시면 됩니다.

$ java -version

설치된 Java의 버전을 확인하는 화면

 

2. 구글 크롬 설치

 Ubuntu 시스템에 최신 Google Chrome 패키지를 설치해야 합니다. Google 크롬 Headless 기능은 자동화를 위한 멀티파이프 도어를 열어준다고 합니다.

$ sudo curl -sS -o - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add
$ sudo echo "deb [arch=amd64]  http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list
$ sudo apt-get -y update
$ sudo apt-get -y install google-chrome-stable

 

3. 크롬 드라이버 설치

 크롬을 설치했으면 Chrome Driver를 설치 및 설정을 해주셔야 합니다. 크롬 드라이버(Chrome Driver)는 크롬을 위한 웹 드라이버의 와이어 프로토콜을 구현하는 독립 실행형 서버입니다. WebDriver는 여러 브라우저에서 웹 앱을 자동으로 테스트를 할 수 있게 해주는 오픈소스입니다. (저는 php-webdriver를 사용했습니다.)

 

 공식 다운로드 페이지에서 최신 Chrome Driver를 찾을 수 있습니다. 이제 아래 명령을 실행하여 시스템에서 Chrome Driver를 구성합니다.

# 88.0.4324.96 이 최신버전으로 되어있어서 해당 버전으로 설치했습니다.
$ wget https://chromedriver.storage.googleapis.com/88.0.4324.96/chromedriver_linux64.zip
$ unzip chromedriver_linux64.zip

크롬 드라이버를 설치한 화면

 

설치가 끝나면 시스템 구성을 위해 크롬 드라이버를 이동 및 권한을 부여해주시면 됩니다.

$ sudo mv chromedriver /usr/bin/chromedriver
$ sudo chown root:root /usr/bin/chromedriver
$ sudo chmod +x /usr/bin/chromedriver

크롬드라이버를 이동 및 권한 부여한 화면

 

4. Selenium 서버 설치

 아래 명령을 사용하여 Selenium 독립 실행형 서버 jar 파일을 다운로드합니다. 최신 버전의 jar 파일은 selenium 사이트(https://www.selenium.dev/downloads/) 에 접속해서 확인하실 수 있습니다. 해당 사이트에서 3.141 버전을 제공해 해당 버전으로 다운로드하였습니다.

$ wget https://selenium-release.storage.googleapis.com/3.141/selenium-server-standalone-3.141.0.jar

Selenium 서버를 다운받은 화면

 

5. Selenium 서버 실행

아래와 같이 Selenium 서버를 실행시키면 됩니다.

$ xvfb-run java -Dwebdriver.chrome.driver=/usr/bin/chromedriver -jar selenium-server-standalone-3.141.0.jar

Selenium 서버를 실행하면 정상적으로 실행되는 모습을 보실 수 있습니다.

Selenium 서버가 정상적으로 실행된 화면

 

6. 테스트

 윈도우에서 사용했던 네이버 데이터랩 쇼핑인사이트 인기 검색어를 가져오는 프로그램을 이용해서 간단하게 테스트를 진행했습니다. 해당 프로그램을 실행하면 서버는 아래와 같이 나옵니다.

WebDriver를 이용해 Selenium 서버 실행

그리고 실행된 프로그램은 아래와 같이 정상적으로 인기검색어를 크롤링해서 가져오는 것을 확인할 수 있습니다.

정상적으로 크롤링 한 화면

 

이렇게 Ubuntu 20.04에서 Selenium 서버를 설치 및 사용하는 과정이 끝이 났습니다. 

728x90
Comments