웹 애플리케이션 테스트를 위한 포터블 프레임워크이다. 셀레늄은 테스트 스크립트 언어를 학습할 필요 없이 기능 테스트를 만들기 위한 플레이백 도구를 제공한다. (셀례늄 IDE) C 샤프, 그루비, 자바, 펄, PHP, 파이썬, 루비, 스칼라 등 수많은 유명 프로그래밍 언어들에서 테스트를 작성하기 위한 테스트 도메인 특화 언어(Selenese)를 제공한다. 이 테스트들은 현대의 대부분의 웹 브라우저에서 수행이 가능하다. 셀레늄은 윈도우, 리눅스, macOS 플랫폼에서 디플로이된다. 아파치 2.0 라이선스로 배포되는 오픈 소스 소프트웨어이다. [출처: 위키백과]
pip install selenium
conda install -y selenium
둘 중의 코드를 사용하여 설치해주면 된다.
이후 크롬드라이버를 꼭! 설치해줘야 실행이 가능하다.
import selenium
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import Select
from selenium.webdriver.support.ui import WebDriverWait
URL을 변수에 담는다. 이후에 다음과 같은 코드를 입력한다.
driver = webdriver.Chrome(executable_path='chromedriver')
driver.get(url=URL)
import time
time.sleep(초)
다음 time 함수를 import하여 불러오는 파일에 시간을 지연해준다.
자바스크립트가 동적으로 만든 데이터를 크롤링 하기 위해
사이트의 다양한 HTML 요소에 클릭, 키보드 입력 등 이벤트를 주기 위해
Selenium을 잘 활용하면, 평소에 반복적으로 하고 있는 웹상의 업무를 자동화할 수도 있다.
자동으로 로그인하기
메일보내기 자동화
블로그 이웃새글 자동좋아요 누르기
인스타그램 자동으로 좋아요, 댓글 작성하기
등등 정말 많은 다양한 일
브라우저를 직접 동작시켜 실제 사용자 동작을 직접 시뮬레이션한다는 것은 자바스크립트(JavaScript)를 이용해 비동기적이나 뒤늦게 불러와지는 컨텐츠들을 가져올 수 있음을 의미한다.
[출처][Python Selenium] 파이썬 셀레니움 - 개요와 장단점|작성자 넬티아
from selenium.webdriver.common.alert import Alert
Alert(driver).accept() #경고창 수락 누름
Alert(driver).dismiss() #경고창 거절 누름
print(Alert(driver).text # 경고창 텍스트 얻음
더 많은 정보는 이곳