selenium chromedriver on WSL

ssm·2023년 8월 28일
0

우분투

목록 보기
4/4

wsl에서 구글 크롬 드라이버 설치하는 창피한 발버둥 기록

1. wsl2에 크롬 설치

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install ./google-chrome-stable_current_amd64.deb

이때, 아래의 에러가 나오는데, 찾아보니 무시해도 된다고 한다

N: Download is performed unsandboxed as root as file '/home/ssm/google-chrome-stable_current_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)

2. wsl2에 크롬드라이버 설치

크롬 드라이버와 크롬의 버전을 꼭 일치시켜야 함
https://chromedriver.chromium.org/downloads

2.1 고난의 시작

아까 1단계에서 서치한 크롬 버전 확인해보니 116이었음
115 이상 버전에서는 빨간 링크에서 다운받아야 됨

그래서 stable - chromedriver - linux64 이 부분 링크 복사

2.2 링크 가져오기

wget  "https://edgedl.me.gvt1.com/edgedl/chrome/chrome-for-testing/116.0.5845.96/linux64/chromedriver-linux64.zip"

2.3 압축풀기

unzip chromedriver-linux64.zip

시도했지만, unzip 없어서 설치 후 다시 함

sudo apt install unzip
unzip chromedriver-linux64.zip

주의
사실 처음에 chromedriver_linux64.zip 를 unzip 했었는데,
내가 다운받은 115 이상 버전의 드라이버는 chromedriver-linux64.zip였다. (2.2링크 끝부분에서도 확인가능)

즉, 다운받은 버전 파일명을 그대로 unzip (-_를 확인)


2.4 이동시키기

첫 시도(실패)

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

첫 번째 라인이 오류

mv: cannot stat 'chromedriver': No such file or directory

두 번째 시도 (성공)
경로가 틀렸으니 ls로 하위 항목들 확인하고 다시 함
chromedriver-linux64안에 있었음

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



3. 셀레니움 설치

pip install selenium

뒤에 4.2에서 언급하겠지만, 이때 그냥 설치하면 안됐음.. 3 버전 설치해야됨



4. 파이썬 작성

파이썬 파일 만들고 아래 코드 작성

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome('/usr/bin/chromedriver')
driver.get('https://www.daum.net')

4.1 또 다시 에러

찾아보니 셀레니움 4는 경로지정 안해줘도 된다고 함

4.2 셀레니움 4 방법

그래서 경로 삭제하니 제대로 daum 페이지를 열어줌

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

driver=webdriver.Chrome()
driver.get('https://www.daum.net')

문제점: 자꾸 꺼짐..

4.3 결국 셀레니움 3버전으로 다시 install

pip uninstall selenium
pip install selenium==3.141

하지만 또 오류...

4.4 urllib3 버전 다운그레이드

셀레니움을 3으로 내리면서 urllib3와 버전이 안맞는듯
원래 있던 패키지 삭제하고 2.0.0 이하로 설치 (1.26.16으로 함)

pip uninstall urllib3
pip install urllib3==1.26.16



5. 성공

파이썬 파일에서 크롬 드라이버 경로 다시 넣어줌 (셀레니움 3로 내렸으므로)

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome('/usr/bin/chromedriver')
driver.get('https://www.daum.net')
profile
내 뇌의 외장하드

0개의 댓글