본문 바로가기
✨ python/크롤링(Crawling)

파이썬(python) - 웹크롤링, Selenium

by 환풍 2023. 5. 15.
728x90

 

Selenium 라이브러리를 활용한 클릭, 키 입력 이벤트


다음 싸이트에 Selenium을 이용해서 로그인을 진행  
https://hashcode.co.kr

 

QnA | 프로그래머스 커뮤니티

프로그래머스 QnA는 프로그래밍 문제해결을 위한 QnA서비스입니다. 프로그래밍과 관련해서 개발자들끼리 궁금한건 물어보고 아는건 함께 나눠요. C, Java, Python, Ruby등의 코드를 웹에서 직접 실행

qna.programmers.co.kr

 

 

1. 크롬을 실행시켜주는 chromeDriver 설치

 

이렇게 다운로드 받아준뒤 

 

해당 프로젝트 파일에 압축 푼 폴더를 넣어준다.

이후, pip install selenium  을 설치해준다.

 

2. 필요한 라이브러리 추가.

 

from selenium import webdriver 으로 셀레니움 웹드라이버를 임포트 해온 뒤,

 

해당 크롬드라이버가 들어가있는 폴더 안으로 들어가 chromedriver를 실행시킬 것이다.

 

driver = webdriver.Chrome('C:/Users\qkrwn/파이썬\웹크롤링/chromedriver_win32/chromedriver.exe')

이런식으로 실행시켜줄 수 있다.

 

이게 뜨게 된다.

 

이 상태에서 driver.get('https://www.naver.com') 을 치면 , 

얘가 이렇게 바뀌게 된다.

 

 


 

 selenium으로 태그 찾기


* 하나의 태그를 찾는 방법
    1. driver.find_element(By.TAG_NAME, '태그명')
    2. driver.find_element(By.ID, '태그의 아이디')
    3. driver.find_element(By.CLASS_NAME, '태그의 클래스')
* 여러 태그를 찾는 방법
    1. driver.find_elements(By.TAG_NAME, '태그명')
    2. driver.find_elements(By.ID, '태그의 아이디')
    3. driver.find_elements(By.CLASS_NAME, '태그의 클래스')

 

s만 붙여주면 된다.

 

 

 

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

을 추가적으로 import 해주고,

 

페이지를 다시 열어준다.

 

여기 웹 페이지에서 로그인을 클릭했을때 화면 이동을 하기 위해서

 

태그를 선택한 후 ,

로그인A를 클릭해준다고 해주면,

이렇게 로그인을 눌렀을 때의 페이지 이동이 되는 것을 확인해볼 수 있다.

 

 

#이메일 및 비번 입력 input 태그 찾기,
inputs = driver.find_elements(By.CLASS_NAME, 'FymRFM681OjzOdzor5nk')

 

 

 

 

 이렇게 이메일과 비밀번호가 타이핑되있는것을 확인할 수 있다.

 

 

 

* 그밖의 기능

#3초 대기
-> time.sleep(3)

#실행된 크롬 크기 최대화
-> driver.maximize_window()
반응형

댓글