본문 바로가기
반응형

Selenium6

Python selenium Thread 를 사용하여 함수를 병렬로 실행하고, 각 스레드가 실행을 완료할 때까지 대기하는 예제입니다 스레드는 동시에 여러 작업을 수행할 수 있게 해주는데, 이는 여러 작업이 동시에 진행되는 것처럼 보이도록 만들어줍니다. 그러나 주의할 점은 스레드 간에 자원 공유와 관련된 문제가 발생할 수 있으므로 적절한 동기화(Synchronization)가 필요합니다. import threading import time def print_numbers(): for i in range(5): time.sleep(1) print(i) def print_letters(): for letter in 'ABCDE': time.sleep(1) print(letter) # 두 개의 스레드를 생성하여 각각의 함수를 병렬로 실행 thread1 = threading.Thread(target=print_numbers) thread2 =.. 2023. 12. 8.
python selenium pyqt5 창닫힘 이벤트 추가 #pyqt5 창닫힘 이벤트 추가 def closeEvent(self, event): reply = QMessageBox.question(self, '확인', '프로그램을 종료하시겠습니까?', QMessageBox.Yes | QMessageBox.No, QMessageBox.No) if reply == QMessageBox.Yes: driver.quit() event.accept() app.quit() else: event.ignore() 2023. 12. 8.
Python Pyqt5 입려값 json 파일로 저장, 불러오기, 수정, 삭제 class WindowClass(QDialog, form_class) : def __init__(self) : super().__init__() self.setupUi(self) self.user_info_list = [ {'이름': '', '아이디': '', '비밀번호': '', '계정번호': ''} # 원하는 만큼 계속 추가 가능 ] def populate_user_info(self): # 선택한 이름에 해당하는 정보로 라인 에디트 업데이트 selected_name = self.combo_box1_6.currentText() user_info = next((info for info in self.user_info_list if info['이름'] == selected_name), {}) self.na.. 2023. 11. 29.
python3 selenium XPath를 사용하여 여러 조건으로 요소를 찾는 다양한 방법 XPath를 사용하여 여러 조건으로 요소를 찾는 다양한 방법 react-datepicker__time-list-item 클래스를 가지고 텍스트가 "6:00 AM"인 요소를 찾기: 6:00 PM xpath_1 = '//li[contains(@class, "react-datepicker__time-list-item") and contains(text(), "6:00 AM")]' bookPartTime 클래스를 가지고 자식 요소인 button의 텍스트가 "주간"인 요소를 찾기: 주간야간1야간2 xpath_2 = '//ul[@class="bookPartTime"]/li/button[text()="주간"]' 여러 클래스 포함된 요소 찾기: ... xpath_3 = '//*[contains(@class, "clas.. 2023. 11. 23.
python3 selenium 브라우저 팝업,탭 이동 # 현재 창 핸들 저장 (처음 창) first_window_handle = driver.window_handles[0] # 새로 열린 탭의 핸들 얻기 new_window_handle = driver.window_handles[1] # 새로 열린 탭으로 전환 driver.switch_to.window(new_window_handle) # 다시 첫 번째 탭으로 전환 driver.switch_to.window(first_window_handle) # 현재 창 핸들 저장 (처음 창) first_window_handle = driver.window_handles[0] # 모든 창 핸들 가져오기 all_window_handles = driver.window_handles # 팝업 창 핸들 찾기 (예: 두 번째 창).. 2023. 11. 19.
Python3 selenium click이 되지 않을 때 JavaScript를 사용하여 요소를 클릭, element_to_be_clickable, iframe, ActionChains # 요소 찾아 변수에 저장 element = wait(driver, 10).until(EC.visibility_of_element_located((By.XPATH, "찾을 요소"))) # JavaScript를 사용하여 요소를 클릭 driver.execute_script("arguments[0].click();", element ) wait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "찾을 요소" ))).click() element1 = wait(driver, 10).until(EC.presence_of_element_located((By.ID, "down"))) #iframe 태크 엘리먼트 찾기 driver.switch_to.frame(elemen.. 2023. 11. 18.
반응형