1. 셀레니엄이란?
Selenium은 웹 애플리케이션 테스팅을 위한 라이브러리로, 웹 브라우저를 제어하여 자동화된 UI 테스트를 수행할 수 있도록 도와줍니다.
Selenium은 다양한 프로그래밍 언어를 지원하며, Python, Java, C#, Ruby 등 사용할 수 있습니다. Selenium을 사용하면 웹 애플리케이션에서 제공하는 기능들을 자동으로 테스트할 수 있으며, 이를 통해 애플리케이션의 품질을 관리할 수 있습니다.
Selenium을 사용하면, 웹 애플리케이션을 제어하는데 필요한 코드를 쉽게 작성할 수 있으며, 이를 통해 자동화된 UI 테스트를 수행할 수 있습니다.
2. 셀레니엄 find_element 소개
Selenium에서 find_element 기능은 웹 페이지에서 HTML 요소를 찾는 기능입니다. 이 기능을 사용하면, 웹 페이지에서 특정 HTML 요소를 찾아 제어할 수 있습니다.
일반적으로 find_element 함수는 다음과 같이 사용합니다.
driver.find_element(By.XPATH, '//input[@name="q"]')
위 예제에서는 find_element 함수를 사용하여 name 속성이 "q"인 input 태그를 찾아서 가져옵니다.
find_element 함수는 아래와 같은 파라미터를 가질 수 있습니다.
- By.XPATH: XPath를 사용하여 요소를 찾습니다.
- By.ID: id 속성을 사용하여 요소를 찾습니다.
- By.NAME: name 속성을 사용하여 요소를 찾습니다.
- By.CLASS_NAME: class 속성을 사용하여 요소를 찾습니다.
- By.TAG_NAME: 태그명을 사용하여 요소를 찾습니다.
- By.LINK_TEXT: 링크 텍스트를 사용하여 요소를 찾습니다.
- By.PARTIAL_LINK_TEXT: 링크 텍스트의 일부분을 사용하여 요소
3. 비주얼스튜디오 설치와 selenium 환경 설정방법
비주얼스튜디오 설치와 selenium 환경설정방법은 다음과 같습니다.
- Visual Studio 설치
- Visual Studio 홈페이지에서 다운로드 후 설치를 진행합니다.
- Selenium WebDriver 설치
- Visual Studio에서 프로젝트를 생성합니다.
- 프로젝트에서 NuGet 패키지 관리자를 열어 Selenium.WebDriver 패키지를 설치합니다.
- WebDriver 설정
- 설치한 WebDriver를 프로젝트에 추가합니다.
- 코드에서 WebDriver를 사용하기 위해 using Selenium; 선언을 추가합니다.
- 코드에서 WebDriver 객체를 생성하고 웹 브라우저를 제어할 수 있도록 설정합니다.
- 브라우저 드라이버 설치
- Selenium을 사용하려면 해당 브라우저에 맞는 드라이버를 설치해야합니다.
- 브라우저에 맞는 드라이버를 다운로드하여 프로젝트에 추가합니다.
- 코드에서 드라이버 경로를 설정하여 사용할 수 있도록 설정합니다.
- Selenium을 사용하려면 위와 같은 과정들을 진행해야 합니다. 이 과정들을 정확히 수행하지 않으면 Selenium을 사용할 수 없으므로 주의해야 합니다.
아래 영상을 참고하세요!
네이버 자동로그인 소스
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManager #크롬드라이버 자동 업데이트
from selenium.webdriver.common.keys import Keys # Keys
from selenium.webdriver.common.by import By
import time
import os
import sys
import urllib.request # 폴더생성, 파일 저장
from selenium.webdriver.common import keys
import pyperclip
chrome_options = webdriver.ChromeOptions()
# /chrome_options = EdgeOptions()
chrome_options.use_chromium = True
chrome_options.add_argument('--no-sandbox') # 브라우저 윈도우 사이즈
chrome_options.add_argument('window-size=1920x1080') # 사람처럼 보이게 하는 옵션들
chrome_options.add_argument('--disable-dev-shm-usage')
chrome_options.add_experimental_option("detach", True) # 창을 열었을 때 닫지 않도록
chrome_options.add_experimental_option("excludeSwitches", ["enable-logging"]) # 불필요한 에러메세지 없애기
ndriver = webdriver.Chrome('chromedriver', options=chrome_options)
ndriver.get("https://www.naver.com/")
# pip install ms/ge-selenium-tools
ndriver.implicitly_wait(3) # 대기시간
# print(keyword, '검색')
elem = ndriver.find_element(By.CLASS_NAME, "link_login")
elem.click()
idInput=ndriver.find_element(By.ID, "id")
idInput.send_keys("아디")
pwInput = ndriver.find_element(By.ID, "pw")
pwInput.send_keys("비밀번호")
ndriver.find_element(By.id, "log.login").click()
'교육 > 파이썬빅데이터분석교육' 카테고리의 다른 글
ChatGPT로 테슬라주식 예측프로그램 작성하기 실습 (0) | 2023.01.21 |
---|---|
파이썬으로 대한민국 부동산 통계보기 (0) | 2023.01.20 |
주사위 게임(파이썬) 예시 (0) | 2022.12.30 |
랩터(Raptor) 프로그램 가이드 북 (0) | 2022.12.30 |
py-script 실습 (0) | 2022.12.20 |