[Python] Selenium 사용하는 법(feat. chromedriver 설치)

2022. 6. 17. 11:35·Python

 

 

0. Selenium 이란?

 

웹 크롤링을 하는 과정에서 로그인이 필요한 경우, 또는 해당 웹사이트가 프로그램을 통한 접근을 막은 경우, 동적으로 생성된 정보를 가져와야하는 경우 등 requests, beautifulsoup로는 페이지를 수집하는 것에 한계가 있다. 셀레니움(Selenium)은 이럴 때 브라우저를 조작할 수 있게 도와주는 라이브러리이다.

 

원래 Selenium은 웹 애플리케이션을 테스트하기 위한 목적으로 만들어진 포터블 프레임워크지만 웹 크롤링을 할 때 직접 브라우저를 자동 제어하는 것에 큰 도움이 되었기 때문에 웹 크롤링에 많이 쓰이게 되었다.

 


 

1. 셀레니움 라이브러리 설치

 

먼저 터미널을 이용해 셀레니움 라이브러리를 설치해주자.

pip install selenium

 

 

주피터 노트북에서 앞에 느낌표만 붙여주면 설치가 가능하다.

 


2. 크롬드라이버 설치

 

셀레니움을 사용하려면 chromedriver를 따로 설치해줘야 한다.

  • 주소링크: 크롬브라우저 다운로드
  • 주소링크: 크롬드라이버 다운로드

 

일단 크롬브라우저를 다운받아야 한다. 이제 점3개로 그려져있는 chrome 맞춤설정 및 제어버튼을 클릭해 현재 사용하고 있는 크롬브라우저의 정보를 확인해야한다.

 

 

현재 사용하고 있는 버전이 102.x.xxxx 버전이므로 크롬드라이버 또한 102.x.xxxx 버전으로 설치해줘야한다.

(현시점 기준 크롬드라이버의 최신 버전은 103.x.xxx 버전) 

크롬 드라이버 다운로드 홈페이지

 

만약 윈도우를 사용한다면 64비트 운영체제를 사용하더라도 win32를 다운로드 받으면 된다. 리눅스나 맥은 각자 해당하는 zip파일을 다운로드 받으면 된다.

 

이제 zip파일을 압축해제를 한다. chromedriver.exe 파일 하나만 있을 것이다. 해당 프로젝트에 크롬드라이버를 넣어서 사용해도 되고 아니면 적절한 경로를 만들어 크롬 드라이버를 저장해놔도 좋다.

 


3. 테스트

 

원하는 위치에 크롬 드라이버를 옮겼다면 아래와 같이 테스트해보자

from selenium import webdriver

browser = webdriver.Chrome("D:/driver/chromedriver.exe")
url = "https://www.google.com/"
browser.get(url) # 접속
print(browser.page_source) # 페이지 정보

 

테스트가 성공했다면 개발환경에서 페이지의 소스를 출력하고 아래와 같이 브라우저가 열릴 것이다.

 

'Python' 카테고리의 다른 글
  • [파이썬] Numpy 정리
  • [파이썬] heapq 힙큐 사용하기
  • [파이썬] any()와 all()
  • [파이썬] 파이썬 기초 요약
gakko
gakko
좌충우돌 개발기
  • gakko
    MYVELOP 마이벨롭
    gakko
  • 전체
    오늘
    어제
    • 분류 전체보기 (206) N
      • 끄적끄적 (6)
      • Spring (17)
      • Java (2)
      • Redis (1)
      • Test (3)
      • 대외활동 (36) N
        • 부스트캠프 (23)
        • IT커뮤니티 (5) N
        • 글또 (5)
        • 컨퍼런스 (3)
      • Infra (5)
        • Docker (1)
        • Jenkins (1)
        • AWS (1)
      • CS (26)
        • 자료구조 (13)
        • 운영체제 OS (12)
        • 데이터베이스 (1)
      • MySQL (7)
      • Git & GitHub (16)
        • Git (12)
        • Github Actions (1)
        • 기타(마크다운 등) (3)
      • 프로젝트 (2)
      • 리눅스 (6)
        • 기초 (6)
        • 리눅스 서버 구축하기 (0)
      • 후기 (3)
        • Udemy 리뷰 (3)
      • Python (12)
      • 레거시모음 (64)
        • 스프링 (11)
        • 자바 클래스&메소드 (1)
        • 오류해결 (18)
        • JSP & Servlet (12)
        • 자바스크립트 기초 (3)
        • React (2)
        • 이클립스 (1)
        • 알고리즘 문제풀이 (16)
      • 디자인패턴 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 우진님
  • 공지사항

  • 인기 글

  • 태그

    자바
    부스트캠프 7기
    스프링부트
    MySQL
    스프링
    부스트캠프
    부스트캠프 멤버십
    GitHub
    오류해결
    os
    알고리즘
    웹개발
    자바스크립트
    jsp
    java
    Python
    Git
    Spring
    운영체제
    파이썬
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.0
gakko
[Python] Selenium 사용하는 법(feat. chromedriver 설치)
상단으로

티스토리툴바