From 152615e24b346772a559b9c9ad72effae3849135 Mon Sep 17 00:00:00 2001 From: Max Date: Wed, 17 May 2023 10:44:37 +0800 Subject: [PATCH] uncheck the adjacent seat checkbox for urbtix --- chrome_tixcraft.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/chrome_tixcraft.py b/chrome_tixcraft.py index b30f0b2..322ce79 100644 --- a/chrome_tixcraft.py +++ b/chrome_tixcraft.py @@ -4806,6 +4806,44 @@ def urbtix_ticket_number_auto_select(driver, config_dict): return is_ticket_number_assigned +def urbtix_uncheck_adjacent_seat(driver, config_dict): + show_debug_message = True # debug. + show_debug_message = False # online + + if config_dict["advanced"]["verbose"]: + show_debug_message = True + + el_checkbox_icon = None + is_checkbox_checked = False + try: + my_css_selector = "div.quantity-inner > div.header > div.right > div.checkbox-wrapper > div.checkbox-icon" + el_checkbox_icon = driver.find_element(By.CSS_SELECTOR, my_css_selector) + if not el_checkbox_icon is None: + div_class_string = str(el_checkbox_icon.get_attribute('class')) + if not div_class_string is None: + if len(div_class_string) > 1: + if 'checked' in div_class_string: + is_checkbox_checked = True + + except Exception as exc: + if show_debug_message: + print(exc) + pass + + try: + if is_checkbox_checked: + el_checkbox_icon.click() + except Exception as exc: + if show_debug_message: + print(exc) + + # force to click when exception. + try: + driver.execute_script("arguments[0].click();", el_checkbox_icon) + except Exception as exc2: + pass + + pass def urbtix_performance(driver, config_dict): show_debug_message = True # debug. @@ -4863,6 +4901,9 @@ def urbtix_performance(driver, config_dict): except Exception as exc: pass + if config_dict["advanced"]["disable_adjacent_seat"]: + urbtix_uncheck_adjacent_seat(driver, config_dict) + # choose ticket. is_ticket_number_assigned = urbtix_ticket_number_auto_select(driver, config_dict) if show_debug_message: