□ 주 사용 라이브러리
○ 셀레니움
○ 셀레니움 > 웹드라이버 > 키
○ 셀레니움 > 웹드라이버 구동
○ 셀레니움 > 웹드라이버 > 옵션 라이브러리
○ 타임지정
from selenium import webdriver
from selenium.webdriver.chrome.options import Options #크롬 자동방지 등 옵션 활용 라이브러리
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains #마우스 커서관련 라이브러리
from selenium.webdriver.common.keys import Keys #값입력시 활용 라이브러리
import time #실행 후 대기시간 라이브러리
□ 주 사용 함수
○ 드라이버 구동 : .webdriver.Chrome( )
○ 생성창 최대크기 : .maximize_window()
○ 생성창 크기지정 : .set_window_size(가로,높이)
○ 생성창 위치좌표 : .set_window_position(행위치, 열위치)
○ 타겟 주소 지정함수 : .get('주소')
○ id value를 활용한 값 입력 : .find_element(by='id', value='값').send_keys(입력값)
○ id value를 활용한 클릭 : .find_element(by='id', value='값').click()
○ x-path를 활용한 클릭 : .find_element(By.XPATH, value = 'xpath 값').send_keys(입력값)
○ x-path를 활용한 파일/텍스트 입력 : .find_element(By.XPATH, value = 'xpath 값').click()
○ Css 셀렉터를 활용한 파일/텍스트 입력 : .find_element(By.CSS_SELECTOR , value = '#file-upload'
#필요라이브러리 추출
from selenium import webdriver
from selenium.webdriver.chrome.options import Options #크롬 자동방지 등 옵션 활용 라이브러리
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains #마우스 커서관련 라이브러리
from selenium.webdriver.common.keys import Keys #값입력시 활용 라이브러리
import time #실행 후 대기시간 라이브러리
# 브라우저 자동 꺼짐옵션지정
chrome_options = Options()
chrome_options.add_experimental_option("detach", True)
# 드라이버 구동
core_driver = webdriver.Chrome(options=chrome_options)
# 웹창 사이즈
core_driver.set_window_size(800,1200) #생성창 크기 커스터마이징 : set_window_size(가로길이, 높이길이)
core_driver.set_window_position(1000, 0) #행위치, 열위치)
# 접속 페이지 지정
core_driver.get('https://the-internet.herokuapp.com/upload')
print('■■■■■■■■■■■■■■■■■ 접속완료')
time.sleep(4)
# 액션 : 파일 업로드
core_driver.find_element(By.CSS_SELECTOR , value = '#file-upload').send_keys("C:/python/screent_shot/injick.jpg")
print('■■■■■■■■■■■■■■■■■ 업로드완료')
time.sleep(2)
# 액션 : 클릭
core_driver.find_element(By.XPATH, value = '//*[@id="file-submit"]').click()
print('■■■■■■■■■■■■■■■■■ 버튼클릭 완료')
time.sleep(2)
core_driver.quit()
print('■■■■■■■■■■■■■■■■■ 셀레니움 종료')
'Python > Python_Crawling' 카테고리의 다른 글
API/JSON 이란?(+postman 활용 데이터 get) (0) | 2024.01.19 |
---|---|
셀레니움 : 다음이미지 마우스호버 및 사진별 캡쳐 (0) | 2024.01.19 |
셀레니움 : 구글 검색어 입력 및 기사 접속, 화면 스크린샷(캡쳐) (0) | 2024.01.18 |
셀레니움 : 네이트 메뉴버튼클릭 및 댓글작성, 알럴트(경고)창 통제 (0) | 2024.01.18 |
셀레니움 : 네이버 로그인 및 메뉴접속 (0) | 2024.01.18 |