Selenium 8

[Selenium] 클래스

파이썬으로 자동화 스크립트를 구현하다보면 반복적으로 복붙하게 되는 부분이 있을 수 있다.예시로 위와 같은 부분을 계~속 복붙해야 한다고 생각해보자. 그럼 모든 스크립트를 짤 때마다 이 긴 구문을 매번 써줘야 할까? 에 대한 생각으로 시작된 class 연구... 파이썬에는 클래스(Class)라는 것이 존재한다.imwebrun이라는 Class를 정의한 모습이다. 이렇게 한 번 정의해두면 클래스명("이동하고 싶은 url")만 입력해도 '클래스명'이라는 Class에 들어있는 모든 구문이 실행된다. 파이참에는 클래스 사용 위치를 확인하는 좋은 기능도 있으니 써보자..... 기존 스크립트 VS 수정한 스크립트 물론 수정한 스크립트는 빠진 부분에 대한 걸 다른 모듈로 정의하여 모듈의 수는 늘었다. 그래도 유지보수하기..

Selenium 2023.10.29

[Selenium] 스크린샷

이전에 작성했던 스크립트에 스크린샷 부분만 추가를 해보았다. import pyscreenshot t = driver.switch_to.alert.text time.sleep(1) if t == "제목을 입력하세요": print("PASS") else: print("FAIL") image = pyscreenshot.grab() image.save("..\\scrs\\제목_얼럿_오류.png") 추가한 부분은 이 부분으로, 이슈 발생 시 FAIL을 출력하고 스크린샷을 저장하는 형식이다. 실행하면 FAIL이 나올 경우 scrs라는 폴더에 이미지 파일이 저장된다. 왜 FAIL이 떴냐면? alert 내 텍스트가 "제목을 입력 하세요."였기 때문.. * 웹 한정 캡처가 아닌 PC 화면 전체 캡처(Prt Sc)이기 때..

Selenium 2023.10.10

[Selenium] 실험1

RT 추첨기 만들어보기~! 실험용 게시물로 언제 만들어질지, 만들 수 있는지는 아무도 모름 일단 (구)트우I터에서 'nn 재게시'를 누르면 이 창이 뜨는데 여기서 하나하나 뜯어보면 될 것 같음 굳이 로그인 스크립트부터 짤 필요는 없을 것 같고, 그냥 이 창 띄운 후부터 시작하게끔.. //*[@id="layers"]/div[2]/div/div/div/div/div/div[2]/div[2]/div/div/div/section/div/div/div[1]/div/div/div/div/div[2]/div[1]/div[1]/div/div[2] 위 창에서 @ID 부분의 XPath는 위와 같음 그중에서도 //*[@id="layers"]/div[2]/div/div/div/div/div/div[2]/div[2]/div/d..

Selenium 2023.09.09

[Selenium] 크롬 창 종료 현상?

쭉 주피터 노트북 쓰다가 파이참을 한 번 설치해봤는데, 버전 문제인지 스크립트 실행하면 크롬 창이 바로 꺼지는 현상 발생; 뭐가 문제인가 하고 구글링 해본 끝에 https://github.com/SeleniumHQ/selenium/issues/10188 [🐛 Bug]: Selenium closes after script runs · Issue #10188 · SeleniumHQ/seleniumWhat happened? When ever I try to open a website using driver.get(url) it just closes. I've read some things in stack overflow that say to use chrome_options.add_experimental_op..

Selenium 2023.06.16

[Selenium] 엑셀 파일 읽기/쓰기

openpyxl 이용해보기..... 미리 설치 필요!! 인데 익숙해지기까지 시간이 좀 많이 필요할 것 같다. import selenium import pyperclip import time from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from openpyxl import load_workbook openpyxl로 미리 만들어둔 엑셀 파일을 l..

Selenium 2023.01.21