목차
Python 인터파크 티켓 매크로 예매하기 버튼 클릭 및 예매 창 처리
인터파크 티켓 매크로 예매 과정에서 가장 중요한 단계 중 하나는 '예매하기' 버튼을 클릭하고, 이후에 나타나는 다양한 인터페이스를 처리하는 것입니다. 이 과정은 인터파크 티켓 예매 사이트의 구조에 따라 다소 복잡할 수 있으며, 여러 단계의 페이지 전환과 프레임 이동을 포함할 수 있습니다.
Python 인터파크 티켓 예매하기 버튼 클릭
- 예매 페이지로 이동: 사용자가 원하는 공연의 검색 결과로부터 공연의 상세 예매 페이지로 이동합니다. 이 페이지에서는 공연 시간, 날짜 선택, 가격 등의 정보를 확인할 수 있습니다.
- 예매 버튼 클릭: 사용자가 선택한 공연 정보와 일치하는 '예매하기' 버튼을 클릭해야 합니다. 이 버튼은 페이지의 구조에 따라 위치가 달라질 수 있으므로, 정확한 XPath 또는 CSS 선택자를 사용하여 요소를 찾아야 합니다.
# 예매하기 버튼을 찾고 클릭 book_button = driver.find_element(By.XPATH, '//*[@id="productSide"]/div/div[2]/a[1]') book_button.click()
- 새 탭으로의 자동 전환 처리: 대부분의 경우, 새 탭이나 팝업 창에서 예매 상세 과정이 진행됩니다. 이를 위해 드라이버를 새로 열린 탭으로 전환해야 합니다.
# 모든 윈도우 핸들을 출력하고, 새로 열린 탭으로 전환 window_handles = driver.window_handles driver.switch_to.window(window_handles[-1]) # 가장 최근에 열린 탭으로 전환
인터파크 티켓 예매 창 처리
- 아이프레임 전환: 인터파크 티켓의 예매 페이지는 여러 아이프레임(iFrame)을 사용하여 구성됩니다. 원하는 요소에 접근하기 위해서는 올바른 아이프레임으로 전환하는 것이 필수적입니다.
# 아이프레임으로 전환 driver.switch_to.frame(driver.find_element(By.XPATH, '//*[@id="ifrmSeat"]'))
- 부정 예매 방지 코드 입력: 일부 티켓 사이트에서는 부정 예매를 방지하기 위해 이미지 기반의 문자 인식(Captcha)을 요구합니다. 이 문자를 인식하고 입력하는 과정은 OCR 기술을 사용하여 자동화할 수 있습니다.
import easyocr reader = easyocr.Reader(['en']) captcha_image = driver.find_element(By.XPATH, '//*[@id="imgCaptcha"]') result = reader.readtext(captcha_image.screenshot_as_png, detail=0) captcha_text = result[0].replace(' ', '').replace('5', 'S') # 예시: 문자 정제 과정 # Captcha 입력 필드에 추출된 문자 입력 captcha_input = driver.find_element(By.XPATH, '//*[@id="txtCaptcha"]') captcha_input.send_keys(captcha_text)
- 입력 확인 및 진행: 입력된 부정 예매 방지 코드가 올바른지 확인 후, 올바르지 않다면 다시 입력합니다. 코드가 올바르면 다음 단계로 진행합니다.
submit_button = driver.find_element(By.XPATH, '//*[@id="divRecaptcha"]/div[1]/div[4]/a[2]') submit_button.click()
- 좌석 선택과 결제: 최종적으로 사용자는
- 좌석을 선택하고 결제 방식을 선택하여 예매를 완료합니다. 이 과정 역시 프레임 전환과 상세한 DOM 조작을 필요로 합니다.
이렇게 예매하기 버튼 클릭과 예매 창 처리는 인터파크 티켓 예매 자동화에서 매우 중요한 부분입니다. 정확한 요소 위치 파악과 프레임 관리, 그리고 상황에 맞는 적절한 코드 처리가 필요합니다.
반응형
'Dev > Python Macro' 카테고리의 다른 글
파이썬 매크로 인터파크 티켓 예매 자동화: 좌석 선택 과정 macro (0) | 2024.03.29 |
---|---|
파이썬 인터넷 인터파크 티켓 예매 시스템 부정예매 방지코드 입력을 위한 OCR 처리 (0) | 2024.02.29 |
파이썬 인터파크 티켓 예매 페이지로 이동하는 매크로 스크립트 (0) | 2024.02.14 |
Python 인터파크 티켓 예매 자동화 매크로: 로그인 과정 (0) | 2024.02.04 |
Python 및 Selenium을 이용한 인터파크 티켓 예매 자동화 매크로를 위한 준비 단계 (0) | 2024.01.27 |
댓글