티스토리 뷰

Selenium의 로고

 

크롤링할 때 자주 쓰는 것 중 하나가 바로 셀레늄입니다. 이번에는 셀레늄의 세팅 방법을 정리합니다.

해당 과정은 컴퓨터에 파이썬이 설치되어 있어야 합니다.

 

1. pip 설치

셀레늄 설치는 무척 간단합니다. 윈도우+r -> 실행 -> cmd 입력. 터미널이 실행되면 'pip install selenium'를 입력하면 설치됩니다.

cmd에 pip install selenium을 입력하면 설치됩니다. 

 

 

2. 웹 드라이버 설치

2-1. 크롬 브라우저 버전 확인

셀레늄은 가상환경과 비슷한  크롬 브라우저를 사용합니다. 그래서 웹 드라이버를 다운로드하여야 합니다. 우선 지금 사용 중인 크롬의 버전을 확인합니다. 아래 사이트에 들어가거나 크롬 메뉴에서 정보를 클릭합니다. 지금 사용하는 크롬의 버전은 80.0.3987이라는 걸 알 수 있습니다.

 

- 설정 -> 도움말 ->크롬 정보 확인

 

- 크롬 정보 확인 url : chrome://settings/help

 

2-2. 웹 드라이버 다운

버전을 확인 후 버전에 맞는 웹 드라이버를 클릭합니다. 그리고 자신의 운영체제에 맞는 걸 클릭하여 다운로드합니다. 윈도우 OS를 사용하고 있다면 win32 버전을 다운로드합니다.

 

- 웹 드라이버 다운 : https://sites.google.com/a/chromium.org/chromedriver/downloads

 

자신의 크롬 버전에 맞는 드라이버를 클릭

 

윈도우를 쓰고 있다면 win32를 클릭받아 다운로드

 

해당 파일을 다운받아 압축을 풀면 chromedriver이라는 파일이 나옵니다. 이걸 통해 크롤링을 할 수 있습니다.

 

다운받은 후 압축 해제

 

 


 

이러면 셀레늄을 사용할 준비가 되었습니다. 이번에는 정상적으로 작동하는지 테스트해봅니다.

 

3. 홈페이지 테스트

3-1. 주피터 생성

다운로드한 폴더(혹은 원하는 폴더나)에 웹 드라이버를 복사하고 주피터 노트북을 실행해줍니다. 

- 쥬피터 노트북 실행방법: 해당 폴더에서 Alt+D -> cmd -> 엔터 -> jupyter notebook 

 

쥬피터를 실행 후 Python3를 선택하고 새로운 쥬피터를 생성합니다.

 

 

3-2. 라이브러리 불러오기

설치한 셀레늄을 불러옵니다. 그리고 driver라는 변수에 다운로드한 웹 드라이버 경로를 입력해줍니다.

from selenium import webdriver
driver = webdriver.Chrome('chromedriver')

불러오는 중에 경고창이 뜨면 액세스 허용을 클릭. 정상적으로 창이 쓰면 오른쪽 같이 새로운 크롬 창이 열립니다.

 

3-3. 네이버 접속

이제 네이버 메인으로 접속해봅시다. get() 명령어에 네이버 주소를 입력합니다.

from selenium import webdriver
driver = webdriver.Chrome('chromedriver')
driver.get('https://www.naver.com')

 

네이버에 접속되었습니다.

3-4. 네이버 로그인 페이지 접속

이번에는 로그인을 위해 로그인 페이지에 접속해봅니다.

 

from selenium import webdriver
driver = webdriver.Chrome('chromedriver')
driver.get('https://nid.naver.com/nidlogin.login')

로그인 페이지로 이동하였습니다. 아이디 란에 우측 크릭 후 검사를 클릭합니다.

 

3-5. 아이디 비밀번호 찾기

그러면 개발자 도구가 열리면서 아이디 부분의 input 코드가 표시됩니다. 해당 input의 id가 id라고 되어 있습니다. id는 해당 페이지의 다양한 html 요소들 중에서 특정 요소를 구별해주는 식별번호 같은 것입니다. 아이디와 비밀번호를 입력하는 부분을 조회하면 아래와 같습니다.

- 아이디 : id

- 비밀번호 : pw

 

이부분이 중요합니다.

 

3-6. 아이디와 비밀번호에 입력

셀레늄은 특정 위치에 원하는 값을 넣을 수 있습니다. 아이디에 실제 사용하는 아이디와 비밀번호를 입력하는 과정입니다. 그러면 자동 입력 방지 이미지가 나오는데 해당 부분만 직접 입력하고 로그인 버튼을 클릭해줍니다. 

from selenium import webdriver
driver = webdriver.Chrome('chromedriver')
driver.get('https://nid.naver.com/nidlogin.login')
driver.find_element_by_name('id').send_keys('아이디 입력')
driver.find_element_by_name('pw').send_keys('비밀번호 입력')

입력한 아이디와 비밀번호는 자동으로 입력되고 자동입력방지 문자를 입력하고 로그인하면 정상적으로 로그인 됩니다.

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함