본문 바로가기
Dev/Python Macro

Python 인터파크 티켓 매크로 예매하기 버튼 클릭 및 예매 창 처리

by 하양동백 2024. 2. 24.

목차

    Python 인터파크 티켓 매크로 예매하기 버튼 클릭 및 예매 창 처리

    인터파크 티켓 매크로 예매 과정에서 가장 중요한 단계 중 하나는 '예매하기' 버튼을 클릭하고, 이후에 나타나는 다양한 인터페이스를 처리하는 것입니다. 이 과정은 인터파크 티켓 예매 사이트의 구조에 따라 다소 복잡할 수 있으며, 여러 단계의 페이지 전환과 프레임 이동을 포함할 수 있습니다.

    Python 인터파크 티켓 예매하기 버튼 클릭

    1. 예매 페이지로 이동: 사용자가 원하는 공연의 검색 결과로부터 공연의 상세 예매 페이지로 이동합니다. 이 페이지에서는 공연 시간, 날짜 선택, 가격 등의 정보를 확인할 수 있습니다.
    2. 예매 버튼 클릭: 사용자가 선택한 공연 정보와 일치하는 '예매하기' 버튼을 클릭해야 합니다. 이 버튼은 페이지의 구조에 따라 위치가 달라질 수 있으므로, 정확한 XPath 또는 CSS 선택자를 사용하여 요소를 찾아야 합니다.
    3. # 예매하기 버튼을 찾고 클릭 book_button = driver.find_element(By.XPATH, '//*[@id="productSide"]/div/div[2]/a[1]') book_button.click()
    4. 새 탭으로의 자동 전환 처리: 대부분의 경우, 새 탭이나 팝업 창에서 예매 상세 과정이 진행됩니다. 이를 위해 드라이버를 새로 열린 탭으로 전환해야 합니다.
    5. # 모든 윈도우 핸들을 출력하고, 새로 열린 탭으로 전환 window_handles = driver.window_handles driver.switch_to.window(window_handles[-1]) # 가장 최근에 열린 탭으로 전환

    인터파크 티켓 예매 창 처리

    1. 아이프레임 전환: 인터파크 티켓의 예매 페이지는 여러 아이프레임(iFrame)을 사용하여 구성됩니다. 원하는 요소에 접근하기 위해서는 올바른 아이프레임으로 전환하는 것이 필수적입니다.
    2. # 아이프레임으로 전환 driver.switch_to.frame(driver.find_element(By.XPATH, '//*[@id="ifrmSeat"]'))
    3. 부정 예매 방지 코드 입력: 일부 티켓 사이트에서는 부정 예매를 방지하기 위해 이미지 기반의 문자 인식(Captcha)을 요구합니다. 이 문자를 인식하고 입력하는 과정은 OCR 기술을 사용하여 자동화할 수 있습니다.
    4. 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)
    5. 입력 확인 및 진행: 입력된 부정 예매 방지 코드가 올바른지 확인 후, 올바르지 않다면 다시 입력합니다. 코드가 올바르면 다음 단계로 진행합니다.
    6. submit_button = driver.find_element(By.XPATH, '//*[@id="divRecaptcha"]/div[1]/div[4]/a[2]') submit_button.click()
    7. 좌석 선택과 결제: 최종적으로 사용자는
    8. 좌석을 선택하고 결제 방식을 선택하여 예매를 완료합니다. 이 과정 역시 프레임 전환과 상세한 DOM 조작을 필요로 합니다.

    이렇게 예매하기 버튼 클릭과 예매 창 처리는 인터파크 티켓 예매 자동화에서 매우 중요한 부분입니다. 정확한 요소 위치 파악과 프레임 관리, 그리고 상황에 맞는 적절한 코드 처리가 필요합니다.

    반응형

    댓글