Amazon Linux2에서 Selenium 환경을 최단으로 구축

이 기사는 Amazon Linux에서 Selenium 환경을 최단으로 구축의 Amazon Linux2 버전입니다.
Amazon Linux에서 Selenium 환경을 빌드하려면 위의 링크를 참조하십시오.

개요



2020년 6월 30일에 Amazon Linux 보안 업데이트 제공이 종료됨에 따라,
Amazon Linux2에서도 Selenium 환경을 구축할 수 있도록 했습니다.
대부분 절차는 변경되지 않지만 일부 변경 사항이있었습니다. 다음은 모두 root에서 실시한 것입니다.

절차



· Google 크롬 설치
・GConf2의 설치 ※변경 있음
· ChromeDriver 설치
· Google Noto Fonts 설치
・Selenium 설치 ※변경 있음

Google 크롬 설치


yum install google-chrome-stable 그러면 종속성으로 죽습니다.
다음을 실행합시다.
curl https://intoli.com/install-google-chrome.sh | bash

최신 Google 크롬이 잘 들어가야 합니다.

GConf2 설치



Amazon Linux 때는 리포지토리를 추가하지 않으면 설치할 수 없었습니다만,
Amazon Linux2에서는 쉽게 설치할 수 있습니다.
yum -y install GConf2

ChromeDriver 설치



현재 설치된 Google 크롬이 79.0.3945.88이므로 해당 79.0.3945.36을 가져옵니다.
Google 크롬 버전은 google-chrome-stable -version에서 확인할 수 있습니다.
※ Google 크롬 버전과 해당 ChromeDriver 버전 확인은 여기
wget https://chromedriver.storage.googleapis.com/79.0.3945.36/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
mv chromedriver /usr/local/bin/

Google Noto Fonts 설치



이 상태에서 Selenium에서 화면의 스크린 샷을 찍을 때
일본어가 깨져 버리므로 글꼴을 설치합니다.
htps //w w. 오, ぇ. 코 m / 게 t / 및 /
cd ~/Downloads   # どこか適当な場所で
wget https://noto-website-2.storage.googleapis.com/pkgs/Noto-hinted.zip
unzip Noto-hinted.zip
mkdir -p /usr/share/fonts/opentype/noto
cp *otf *ttf /usr/share/fonts/opentype/noto
fc-cache -f -v # optional

Selenium 설치



여기가 Amazon Linux2가 되어 귀찮아진 곳입니다.
Amazon Linux2에서는 pip가 기본적으로 포함되어 있지 않으므로 먼저 pip를 설치합시다.
Amazon Linux2의 기본 python 버전이 2.7.16이므로 사실은 3 계열로 올린 다음 pip를 설치하고 싶습니다.
yum이 움직이지 않게 될 우려가 있었기 때문에 그대로 설치하고 있습니다.
※yum 주위 포함해, 안전하게 python3계에 올리는 방법을 아시는 분은 꼭 교수를…
yum install -y python-pip

그런 다음 selenium을 설치할 수 있습니다.
pip install selenium

설치하는 것은 이상입니다.

Selenium을 사용해 보자.



Google 톱 페이지의 스크린 샷을 찍는 간단한 테스트 코드를 작성하고
실행해 봅시다.

test.py
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-gpu')
options.add_argument('--window-size=1280,1024')
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://www.google.co.jp/')
driver.save_screenshot('test.png')

실행 디렉토리에 test.png가 생성됩니다.

그건 그렇고, options에 추가하는 인수이지만,
·--headless로 헤드리스 모드
 (이것으로 실행하지 않으면 움직이지 않습니다)
· --no-sandbox는 google-chrome-stable이 움직이기 위해 필요
 ( google-chrome-stable 를 실행하면 알 것)
·--disable-gpu로 그리기 주위가 안정되는 것 같다
(이것 없이 실행하면 만들어진 png 파일이 새까맣다)
·--window-size는 그대로 윈도우 사이즈 지정
됩니다.

마지막으로



작성된 test.png는 다음과 같습니다. 문자가 깨지지 않았습니다.

Amazon Linux2로의 마이그레이션으로 크게 변경이 있을까 생각했습니다만, 거기까지 영향은 없을 것 같습니다.

좋은 웹페이지 즐겨찾기