빅데이터 전문가 되기

Selenium 라이브러리 본문

Python

Selenium 라이브러리

지야소이 2023. 4. 18. 17:05

👀 Selenium 이란?

: 웹 상에서 정적인 페이지를 탐색할 때는 BeautifulSoup 패키지를 동적인 크롤링을 할 때는 Seleunium 패키지를 사용합니다. 여기서 동적인 크롤링이란, url 상에는 아무런 변화없이 동작하는 웹 페이지에 대한 크롤링입니다.

 

 

😄 설정

👉 chrome driver 설정

- 크롬 드라이버 다운로드: https://chromedriver.chromium.org/downloads

 

ChromeDriver - WebDriver for Chrome - Downloads

Current Releases If you are using Chrome version 113, please download ChromeDriver 113.0.5672.24 If you are using Chrome version 112, please download ChromeDriver 112.0.5615.49 If you are using Chrome version 111, please download ChromeDriver 111.0.5563.64

chromedriver.chromium.org

- google -> 설정 -> Chrome 정보 -> 버전 확인 

- mac : chromedrive 파일을 /usr/local/bin 디렉토리로 복사

            sudo cp ~/Downloads/chromedriver /usr/local/bin

 

- windows : 다운로드 후 환경변수(내컴퓨터 - 속성 - 고급시스템설정) 추가

                   chromedriver의 path를 추가

                    PATH를 설정 후 Juptyer 재실행

 

- selenium python package 설치

 : pip install selenium 

  conda install -c conda -forge selenium

 

 

👉 chrome에 들어가기

from selenium import webdriver 

driver = webdriver.Chrome("chromedriver")

# url 지정
url = "https://daum.net"
driver.get(url)

# 윈도우 사이즈 조절
driver.set_window_size(800,600)

# 스크롤 위치 조절
driver.execute_script("window.scrollTo(200,300);")

# alert 다루기
driver.execute_script("alert('연세IT!!');")

alert = driver.switch_to.alert
alert.accept()

 

👉 검색어 입력 후 클릭 

from selenium.webdriver.common.by import By

# input 태그에 문자열 입력
driver.find_element(By.CSS_SELECTOR, "#q").send_keys("연세IT")

# input 태그에 문자열 클리어
driver.find_element(By.CSS_SELECTOR, "#q").clear()

driver.find_element(By.CSS_SELECTOR, "#q").send_keys("파이썬")

# button 클릭
driver.find_element(By.CSS_SELECTOR, ".inner_search > .btn_search").click()

# 브라우져 종료
driver.quit()

 

'Python' 카테고리의 다른 글

[DataFrame] merge( ) vs concat( )  (0) 2023.04.27
Warnings(경고 제어)  (0) 2023.04.27
라이브러리 자료모음  (0) 2023.04.14
사용자 정의 함수  (4) 2023.04.13
List 요소 삭제  (0) 2023.04.13
Comments