IT/Python

[Python - 크롤링] 셀레니움 설치/환경 설정 및 주요 명령어 정리

멋진 선배 2025. 5. 1. 11:45
반응형
pip install selenium==4.17.2

from selenium import webdriver

#Edge 드라이버 생성
driver = webdriver.Edge()  #webdriver.Chrome()
반응형

실행시

 

원하는 페이지로 이동하는 방법

driver.get("https://www.naver.com")
  •  driver.get() 안에 이동하고자하는 페이지의 주소를 문자열 형태로 넣어주면 됩니다.
  •  URL 형식 : driver.get에 전달하는 URL은 반드시 완전한 형식이여야 합니다.
                       예를 들어 "www.example.com" 대신 "https://www.example.com" 처럼 프로토콜을 표시해야 합니다.
  • 동기 실행 : driver.get 명령어는 웹 페이지가 완전히 로드될 때까지 실행을 차단(block) 합니다.
                      즉, 이 명령어 다음에 있는 코드는 페이지 로딩이 완료된 후에 실행 됩니다.

NoSuchWindowException 오류

이미 꺼진 창을 제어하려고 했을때 나타나는 오류 입니다. 창이 실행되고 있는지 확인 후 코드를 실행해 보시면 됩니다.

 

뒤로 가기, 앞으로 가기, 페이지 새로고침

반응형
  • driver.back() : 뒤로 가기 버튼을 누른 것과 동일한 효과입니다.
  • driver.forward() : 앞으로 가기 버을 누른 것과 동일한 효과 입니다.
  • driver.refresh() : 페이지 새로고침 버튼을 누른 것과 동일한 효과 입니다.

브라우저 종료

driver.close() : 현재 활성화된 브라우저 창만 닫습니다. 여러개의 창을 제어할 때 유용하게 사용할 수 있습니다.

driver.quit() : 열려있는 모든 창을 닫고, WebDriver 세션을 종료 합니다.

 

현재 URL 확인하는 명령어

driver.current_url # 현재 URL
  • driver.current_url : 현재 브라우저 창에 열려있는 URL 을 문자열 형태로 가져 옵니다.
  • 읽기 전용 : driver.current_url은 읽기 전용 속성이므로, 이를 통해 URL을 변경할수 없습니다. 페이지를 이동하려면 driver.get()명령어를 사용해야 합니다.
  • 리다이렉션 처리 : 웹 페이지 접근 시 "리다이렉션이 발생하는 경우, driver.current_url은 최종적으로 리다이렉션된 후의 url을 반환합니다. 이는 리다이렉션후 최종 도착 URL을 확인하는데 유용합니다.
    * 리다이렉션(Redirection) : 웹에서 리다이렉션이란 사용자나 브라우저를 자동으로 다른 URL로 이동시키는 과정을 말합니다. 
  • 리다이렉션의 주요 용도
    - URL 변경 : 웹 페이지의 URL이 변경되었을 때, 구 URL에서 신 URL로 사용자를 자동으로 이동시킵니다.
    - 사이트 유지보수 : 웹사이트가 유지보수 중일 때 방문자를 유지보수 안내 페이지로 임시로 이동시키는데 사용됩니다.
    - HTTPS로 강제 이동 : 사용자가 HTTP로 사이트에 접근했을 때, 보안이 강화된 HTTPS 페이지로 리다이렉션해서 접근하도록 할 수 있습니다.

페이지 제목 확인

반응형

driver.title : 현재 브라우저의 창 <title> 태그 내용을 가져옵니다. 웹 페이지의 제목을 문자열을 반환해 줍니다. 특정 페이지에 올바르게 도달했는지 확인하는 용도로 많이 사용 됩니다.

 

창 크기 조절 : 최대화, 최소화

driver.maximize_window() : 현재 브라우저의 크기를 최대화 시킵니다.

driver.minimize_window() : 현재 브라우저 창을 최소화 시킵니다.

 

소스코드

from selenium import webdriver

반응형
반응형
#크롬 드라이버 생성 driver = webdriver.Chrome() #webdriver.Chrome() #원하는 페이지로 이동 driver.get("https://naver.com") #뒤로가기 driver.back() #앞으로기기 driver.forward() #새로고침 driver.refresh() #현재 url 확인 print(driver.current_url) #페이지 제목 확인 driver.title #최대화 driver.maximize_window() #최소화 driver.minimize_window() #현재 창 닫기 #driver.close() #모든 창을 닫고, 웹드라이버 세션 종료 driver.quit()
반응형