우분투 서버에서 파이썬 셀레니움 사용하기 | Ubuntu Server Python Selenium | JMON

JMON·2021년 1월 15일
1

Python

목록 보기
3/3
post-thumbnail

📄 설명

📣 위키백과

셀레늄은 웹 애플리케이션 테스트를 위한 포터블 프레임워크이다. 셀레늄은 테스트 스크립트 언어를 학습할 필요 없이 기능 테스트를 만들기 위한 플레이백 도구를 제공한다.

📄 사용방법

📣 준비

✍ 크롬 다운로드

apt-get install wget -y
# wget 다운로드
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -

sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'

apt-get update -y
apt-get install google-chrome-stable -y
google-chrome --version
# 크롬 버전 확인

📣 링크 확인

Google-chrome 버전에 맞춰 파일 다운로드
https://sites.google.com/a/chromium.org/chromedriver/
페이지로 이동하여 확인
예시 (https://chromedriver.storage.googleapis.com/88.0.4324.96/chromedriver_linux64.zip)

✍ 드라이버 다운로드

wget -N https://chromedriver.storage.googleapis.com/88.0.4324.96/chromedriver_linux64.zip
# 파일 다운로드
apt-get install unzip -y
# Unzip 다운로드
unzip chromedriver_linux64.zip
# 압축 해제
python3 -m pip install --upgrade pip
pip install xlrd
apt-get install xvfb -y
pip install pyvirtualdisplay
pip install selenium

📣 테스트

✍ 코드

from selenium import webdriver

user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.50 Safari/537.36'

options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('user-agent={0}'.format(user_agent))
driver = webdriver.Chrome('./chromedriver',options=options)
# 아무런 경고가 없다면 이상없이 작동되는 것입니다

driver.get(url='https://naver.com')
# 페이지 이동

print(driver.current_url)
# 이동되었는지 확인

driver.close()
# 종료

📄 참고자료

🎈 HOMEPAGE : https://www.selenium.dev/

profile
Fullstack Developer

1개의 댓글

comment-user-thumbnail
2022년 6월 8일

서버에서 headless 설정을 안하고 돌릴 수 있나요?

답글 달기