2024-03-01, update for cityline,kktix
parent
1766b04566
commit
a5e240bdb7
|
@ -41,7 +41,7 @@ try:
|
||||||
except Exception as exc:
|
except Exception as exc:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
CONST_APP_VERSION = "MaxBot (2024.02.07)"
|
CONST_APP_VERSION = "MaxBot (2024.03.01)"
|
||||||
|
|
||||||
CONST_MAXBOT_ANSWER_ONLINE_FILE = "MAXBOT_ONLINE_ANSWER.txt"
|
CONST_MAXBOT_ANSWER_ONLINE_FILE = "MAXBOT_ONLINE_ANSWER.txt"
|
||||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||||
|
@ -988,8 +988,8 @@ def get_driver_by_config(config_dict):
|
||||||
,'*google-analytics.*'
|
,'*google-analytics.*'
|
||||||
,'*googletagmanager.*'
|
,'*googletagmanager.*'
|
||||||
,'*googletagservices.*'
|
,'*googletagservices.*'
|
||||||
|
,'*googlesyndication.*'
|
||||||
,'*play.google.com/*'
|
,'*play.google.com/*'
|
||||||
,'*.googlesyndication.com/*'
|
|
||||||
,'*cdn.cookielaw.org/*'
|
,'*cdn.cookielaw.org/*'
|
||||||
,'*fundingchoicesmessages.google.com/*'
|
,'*fundingchoicesmessages.google.com/*'
|
||||||
,'*.doubleclick.net/*'
|
,'*.doubleclick.net/*'
|
||||||
|
@ -4631,7 +4631,7 @@ def get_kktix_question_text(driver):
|
||||||
question_text = kktix_reg_captcha_question_text(captcha_inner_div)
|
question_text = kktix_reg_captcha_question_text(captcha_inner_div)
|
||||||
return question_text
|
return question_text
|
||||||
|
|
||||||
def kktix_reg_captcha(driver, config_dict, fail_list, captcha_sound_played, is_finish_checkbox_click, registrationsNewApp_div):
|
def kktix_reg_captcha(driver, config_dict, fail_list, is_finish_checkbox_click, registrationsNewApp_div):
|
||||||
show_debug_message = True # debug.
|
show_debug_message = True # debug.
|
||||||
show_debug_message = False # online
|
show_debug_message = False # online
|
||||||
|
|
||||||
|
@ -4646,15 +4646,6 @@ def kktix_reg_captcha(driver, config_dict, fail_list, captcha_sound_played, is_f
|
||||||
is_question_popup = True
|
is_question_popup = True
|
||||||
write_question_to_file(question_text)
|
write_question_to_file(question_text)
|
||||||
|
|
||||||
if len(fail_list)==0:
|
|
||||||
# only play sound once.
|
|
||||||
if not captcha_sound_played:
|
|
||||||
captcha_sound_played = True
|
|
||||||
try:
|
|
||||||
play_sound_while_ordering(config_dict)
|
|
||||||
except Exception as exc:
|
|
||||||
pass
|
|
||||||
|
|
||||||
answer_list = get_answer_list_from_user_guess_string(config_dict)
|
answer_list = get_answer_list_from_user_guess_string(config_dict)
|
||||||
if len(answer_list)==0:
|
if len(answer_list)==0:
|
||||||
if config_dict["advanced"]["auto_guess_options"]:
|
if config_dict["advanced"]["auto_guess_options"]:
|
||||||
|
@ -4678,9 +4669,9 @@ def kktix_reg_captcha(driver, config_dict, fail_list, captcha_sound_played, is_f
|
||||||
check_input_interval = 0.2
|
check_input_interval = 0.2
|
||||||
is_answer_sent, fail_list = fill_common_verify_form(driver, config_dict, inferred_answer_string, fail_list, input_text_css, next_step_button_css, submit_by_enter, check_input_interval)
|
is_answer_sent, fail_list = fill_common_verify_form(driver, config_dict, inferred_answer_string, fail_list, input_text_css, next_step_button_css, submit_by_enter, check_input_interval)
|
||||||
|
|
||||||
return fail_list, captcha_sound_played, is_question_popup
|
return fail_list, is_question_popup
|
||||||
|
|
||||||
def kktix_reg_new_main(driver, config_dict, fail_list, captcha_sound_played, is_finish_checkbox_click):
|
def kktix_reg_new_main(driver, config_dict, fail_list, played_sound_ticket, is_finish_checkbox_click):
|
||||||
show_debug_message = True # debug.
|
show_debug_message = True # debug.
|
||||||
show_debug_message = False # online
|
show_debug_message = False # online
|
||||||
|
|
||||||
|
@ -4740,7 +4731,12 @@ def kktix_reg_new_main(driver, config_dict, fail_list, captcha_sound_played, is_
|
||||||
if is_dom_ready:
|
if is_dom_ready:
|
||||||
# part 3: captcha
|
# part 3: captcha
|
||||||
if is_ticket_number_assigned:
|
if is_ticket_number_assigned:
|
||||||
fail_list, captcha_sound_played, is_question_popup = kktix_reg_captcha(driver, config_dict, fail_list, captcha_sound_played, is_finish_checkbox_click, registrationsNewApp_div)
|
if config_dict["advanced"]["play_sound"]["ticket"]:
|
||||||
|
if not played_sound_ticket:
|
||||||
|
play_sound_while_ordering(config_dict)
|
||||||
|
played_sound_ticket = True
|
||||||
|
|
||||||
|
fail_list, is_question_popup = kktix_reg_captcha(driver, config_dict, fail_list, is_finish_checkbox_click, registrationsNewApp_div)
|
||||||
if not is_question_popup:
|
if not is_question_popup:
|
||||||
# no captcha text popup, goto next page.
|
# no captcha text popup, goto next page.
|
||||||
control_text = get_kktix_control_label_text(driver)
|
control_text = get_kktix_control_label_text(driver)
|
||||||
|
@ -4754,6 +4750,9 @@ def kktix_reg_new_main(driver, config_dict, fail_list, captcha_sound_played, is_
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
if is_need_refresh:
|
if is_need_refresh:
|
||||||
|
# reset to play sound when ticket avaiable.
|
||||||
|
played_sound_ticket = False
|
||||||
|
|
||||||
try:
|
try:
|
||||||
print("no match any price, start to refresh page...")
|
print("no match any price, start to refresh page...")
|
||||||
driver.refresh()
|
driver.refresh()
|
||||||
|
@ -4764,7 +4763,7 @@ def kktix_reg_new_main(driver, config_dict, fail_list, captcha_sound_played, is_
|
||||||
if config_dict["advanced"]["auto_reload_page_interval"] > 0:
|
if config_dict["advanced"]["auto_reload_page_interval"] > 0:
|
||||||
time.sleep(config_dict["advanced"]["auto_reload_page_interval"])
|
time.sleep(config_dict["advanced"]["auto_reload_page_interval"])
|
||||||
|
|
||||||
return fail_list, captcha_sound_played
|
return fail_list, played_sound_ticket
|
||||||
|
|
||||||
def kktix_get_registerStatus(driver, event_code):
|
def kktix_get_registerStatus(driver, event_code):
|
||||||
html_result = None
|
html_result = None
|
||||||
|
@ -7441,10 +7440,9 @@ def hkticketing_login(driver, account, password):
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
def play_sound_while_ordering(config_dict):
|
def play_sound_while_ordering(config_dict):
|
||||||
if config_dict["advanced"]["play_captcha_sound"]["enable"]:
|
app_root = get_app_root()
|
||||||
app_root = get_app_root()
|
captcha_sound_filename = os.path.join(app_root, config_dict["advanced"]["play_sound"]["filename"].strip())
|
||||||
captcha_sound_filename = os.path.join(app_root, config_dict["advanced"]["play_captcha_sound"]["filename"].strip())
|
play_mp3_async(captcha_sound_filename)
|
||||||
play_mp3_async(captcha_sound_filename)
|
|
||||||
|
|
||||||
def play_mp3_async(sound_filename):
|
def play_mp3_async(sound_filename):
|
||||||
import threading
|
import threading
|
||||||
|
@ -7822,12 +7820,12 @@ def tixcraft_main(driver, url, config_dict, tixcraft_dict, ocr, Captcha_Browser)
|
||||||
tixcraft_ticket_main(driver, config_dict, ocr, Captcha_Browser, domain_name)
|
tixcraft_ticket_main(driver, config_dict, ocr, Captcha_Browser, domain_name)
|
||||||
tixcraft_dict["done_time"] = time.time()
|
tixcraft_dict["done_time"] = time.time()
|
||||||
|
|
||||||
if not tixcraft_dict["played_sound"]:
|
if config_dict["advanced"]["play_sound"]["ticket"]:
|
||||||
play_sound_while_ordering(config_dict)
|
if not tixcraft_dict["played_sound_ticket"]:
|
||||||
|
play_sound_while_ordering(config_dict)
|
||||||
tixcraft_dict["played_sound"] = True
|
tixcraft_dict["played_sound_ticket"] = True
|
||||||
else:
|
else:
|
||||||
tixcraft_dict["played_sound"] = False
|
tixcraft_dict["played_sound_ticket"] = False
|
||||||
|
|
||||||
if '/ticket/order' in url:
|
if '/ticket/order' in url:
|
||||||
tixcraft_dict["done_time"] = time.time()
|
tixcraft_dict["done_time"] = time.time()
|
||||||
|
@ -7849,8 +7847,14 @@ def tixcraft_main(driver, url, config_dict, tixcraft_dict, ocr, Captcha_Browser)
|
||||||
tixcraft_dict["is_popup_checkout"] = True
|
tixcraft_dict["is_popup_checkout"] = True
|
||||||
driver.quit()
|
driver.quit()
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
|
if config_dict["advanced"]["play_sound"]["order"]:
|
||||||
|
if not tixcraft_dict["played_sound_order"]:
|
||||||
|
play_sound_while_ordering(config_dict)
|
||||||
|
tixcraft_dict["played_sound_order"] = True
|
||||||
else:
|
else:
|
||||||
tixcraft_dict["is_popup_checkout"] = False
|
tixcraft_dict["is_popup_checkout"] = False
|
||||||
|
tixcraft_dict["played_sound_order"] = False
|
||||||
|
|
||||||
return tixcraft_dict
|
return tixcraft_dict
|
||||||
|
|
||||||
|
@ -7911,11 +7915,11 @@ def kktix_main(driver, url, config_dict, kktix_dict):
|
||||||
if not is_dom_ready:
|
if not is_dom_ready:
|
||||||
# reset answer fail list.
|
# reset answer fail list.
|
||||||
kktix_dict["fail_list"] = []
|
kktix_dict["fail_list"] = []
|
||||||
kktix_dict["captcha_sound_played"] = False
|
kktix_dict["played_sound_ticket"] = False
|
||||||
else:
|
else:
|
||||||
# check is able to buy.
|
# check is able to buy.
|
||||||
if config_dict["kktix"]["auto_fill_ticket_number"]:
|
if config_dict["kktix"]["auto_fill_ticket_number"]:
|
||||||
kktix_dict["fail_list"], kktix_dict["captcha_sound_played"] = kktix_reg_new_main(driver, config_dict, kktix_dict["fail_list"], kktix_dict["captcha_sound_played"], is_finish_checkbox_click)
|
kktix_dict["fail_list"], kktix_dict["played_sound_ticket"] = kktix_reg_new_main(driver, config_dict, kktix_dict["fail_list"], kktix_dict["played_sound_ticket"], is_finish_checkbox_click)
|
||||||
kktix_dict["done_time"] = time.time()
|
kktix_dict["done_time"] = time.time()
|
||||||
else:
|
else:
|
||||||
is_event_page = False
|
is_event_page = False
|
||||||
|
@ -7932,7 +7936,7 @@ def kktix_main(driver, url, config_dict, kktix_dict):
|
||||||
|
|
||||||
# reset answer fail list.
|
# reset answer fail list.
|
||||||
kktix_dict["fail_list"] = []
|
kktix_dict["fail_list"] = []
|
||||||
kktix_dict["captcha_sound_played"] = False
|
kktix_dict["played_sound_ticket"] = False
|
||||||
|
|
||||||
if '/events/' in url and '/registrations/' in url and "-" in url:
|
if '/events/' in url and '/registrations/' in url and "-" in url:
|
||||||
if not '/registrations/new' in url:
|
if not '/registrations/new' in url:
|
||||||
|
@ -7942,6 +7946,12 @@ def kktix_main(driver, url, config_dict, kktix_dict):
|
||||||
if kktix_dict["elapsed_time"] != bot_elapsed_time:
|
if kktix_dict["elapsed_time"] != bot_elapsed_time:
|
||||||
print("bot elapsed time:", "{:.3f}".format(bot_elapsed_time))
|
print("bot elapsed time:", "{:.3f}".format(bot_elapsed_time))
|
||||||
kktix_dict["elapsed_time"] = bot_elapsed_time
|
kktix_dict["elapsed_time"] = bot_elapsed_time
|
||||||
|
|
||||||
|
if config_dict["advanced"]["play_sound"]["order"]:
|
||||||
|
if not kktix_dict["played_sound_order"]:
|
||||||
|
play_sound_while_ordering(config_dict)
|
||||||
|
kktix_dict["played_sound_order"] = True
|
||||||
|
|
||||||
|
|
||||||
if config_dict["advanced"]["headless"]:
|
if config_dict["advanced"]["headless"]:
|
||||||
if not kktix_dict["is_popup_checkout"]:
|
if not kktix_dict["is_popup_checkout"]:
|
||||||
|
@ -7960,6 +7970,7 @@ def kktix_main(driver, url, config_dict, kktix_dict):
|
||||||
sys.exit()
|
sys.exit()
|
||||||
else:
|
else:
|
||||||
kktix_dict["is_popup_checkout"] = False
|
kktix_dict["is_popup_checkout"] = False
|
||||||
|
kktix_dict["played_sound_order"] = False
|
||||||
|
|
||||||
return kktix_dict
|
return kktix_dict
|
||||||
|
|
||||||
|
@ -8476,11 +8487,14 @@ def cityline_main(driver, url, config_dict):
|
||||||
try:
|
try:
|
||||||
window_handles_count = len(driver.window_handles)
|
window_handles_count = len(driver.window_handles)
|
||||||
if window_handles_count > 1:
|
if window_handles_count > 1:
|
||||||
driver.switch_to.window(driver.window_handles[0])
|
driver.switch_to.window(driver.window_handles[-1])
|
||||||
driver.close()
|
page_title = driver.title
|
||||||
driver.switch_to.window(driver.window_handles[0])
|
if len(page_title) > 0:
|
||||||
time.sleep(0.2)
|
driver.switch_to.window(driver.window_handles[0])
|
||||||
except Exception as excSwithFail:
|
if not(".cityline.com/" in page_title and "https://" in page_title):
|
||||||
|
driver.close()
|
||||||
|
driver.switch_to.window(driver.window_handles[-1])
|
||||||
|
except Exception as exc:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
if '.cityline.com/Events.html' in url:
|
if '.cityline.com/Events.html' in url:
|
||||||
|
@ -12526,16 +12540,16 @@ def main(args):
|
||||||
tixcraft_dict["elapsed_time"]=None
|
tixcraft_dict["elapsed_time"]=None
|
||||||
tixcraft_dict["is_popup_checkout"] = False
|
tixcraft_dict["is_popup_checkout"] = False
|
||||||
tixcraft_dict["area_retry_count"]=0
|
tixcraft_dict["area_retry_count"]=0
|
||||||
tixcraft_dict["played_sound"] = False
|
|
||||||
|
|
||||||
# for kktix
|
# for kktix
|
||||||
kktix_dict = {}
|
kktix_dict = {}
|
||||||
kktix_dict["fail_list"]=[]
|
kktix_dict["fail_list"]=[]
|
||||||
kktix_dict["captcha_sound_played"] = False
|
|
||||||
kktix_dict["start_time"]=None
|
kktix_dict["start_time"]=None
|
||||||
kktix_dict["done_time"]=None
|
kktix_dict["done_time"]=None
|
||||||
kktix_dict["elapsed_time"]=None
|
kktix_dict["elapsed_time"]=None
|
||||||
kktix_dict["is_popup_checkout"] = False
|
kktix_dict["is_popup_checkout"] = False
|
||||||
|
kktix_dict["played_sound_ticket"] = False
|
||||||
|
kktix_dict["played_sound_order"] = False
|
||||||
|
|
||||||
fami_dict = {}
|
fami_dict = {}
|
||||||
fami_dict["fail_list"] = []
|
fami_dict["fail_list"] = []
|
||||||
|
|
|
@ -22,7 +22,7 @@ import sys
|
||||||
import threading
|
import threading
|
||||||
import webbrowser
|
import webbrowser
|
||||||
|
|
||||||
CONST_APP_VERSION = "MaxBot (2024.02.07)"
|
CONST_APP_VERSION = "MaxBot (2024.03.01)"
|
||||||
|
|
||||||
CONST_MAXBOT_LAUNCHER_FILE = "config_launcher.json"
|
CONST_MAXBOT_LAUNCHER_FILE = "config_launcher.json"
|
||||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||||
|
|
|
@ -30,8 +30,9 @@
|
||||||
"auto_reload_coming_soon_page": true
|
"auto_reload_coming_soon_page": true
|
||||||
},
|
},
|
||||||
"advanced": {
|
"advanced": {
|
||||||
"play_captcha_sound": {
|
"play_sound": {
|
||||||
"enable": true,
|
"ticket": true,
|
||||||
|
"order": true,
|
||||||
"filename": "ding-dong.wav"
|
"filename": "ding-dong.wav"
|
||||||
},
|
},
|
||||||
"tixcraft_sid": "",
|
"tixcraft_sid": "",
|
||||||
|
|
115
settings.py
115
settings.py
|
@ -48,7 +48,7 @@ try:
|
||||||
except Exception as exc:
|
except Exception as exc:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
CONST_APP_VERSION = "MaxBot (2024.02.07)"
|
CONST_APP_VERSION = "MaxBot (2024.03.01)"
|
||||||
|
|
||||||
CONST_MAXBOT_ANSWER_ONLINE_FILE = "MAXBOT_ONLINE_ANSWER.txt"
|
CONST_MAXBOT_ANSWER_ONLINE_FILE = "MAXBOT_ONLINE_ANSWER.txt"
|
||||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||||
|
@ -218,8 +218,9 @@ def load_translate():
|
||||||
en_us["ticketplus_password"] = 'TicketPlus password'
|
en_us["ticketplus_password"] = 'TicketPlus password'
|
||||||
en_us["save_password_alert"] = 'Saving passwords to config file may expose your passwords.'
|
en_us["save_password_alert"] = 'Saving passwords to config file may expose your passwords.'
|
||||||
|
|
||||||
en_us["play_captcha_sound"] = 'Play sound while ordering'
|
en_us["play_ticket_sound"] = 'Play sound when ticketing'
|
||||||
en_us["captcha_sound_filename"] = 'sound filename'
|
en_us["play_order_sound"] = 'Play sound when ordering'
|
||||||
|
en_us["play_sound_filename"] = 'sound filename'
|
||||||
|
|
||||||
en_us["chrome_extension"] = "Chrome Browser Extension"
|
en_us["chrome_extension"] = "Chrome Browser Extension"
|
||||||
en_us["disable_adjacent_seat"] = "Disable Adjacent Seat"
|
en_us["disable_adjacent_seat"] = "Disable Adjacent Seat"
|
||||||
|
@ -333,8 +334,9 @@ def load_translate():
|
||||||
zh_tw["ticketplus_password"] = '遠大 密碼'
|
zh_tw["ticketplus_password"] = '遠大 密碼'
|
||||||
zh_tw["save_password_alert"] = '將密碼保存到設定檔中可能會讓您的密碼被盜。'
|
zh_tw["save_password_alert"] = '將密碼保存到設定檔中可能會讓您的密碼被盜。'
|
||||||
|
|
||||||
zh_tw["play_captcha_sound"] = '訂購時播放音效'
|
zh_tw["play_ticket_sound"] = '有票時播放音效'
|
||||||
zh_tw["captcha_sound_filename"] = '音效檔'
|
zh_tw["play_order_sound"] = '訂購時播放音效'
|
||||||
|
zh_tw["play_sound_filename"] = '音效檔'
|
||||||
|
|
||||||
zh_tw["chrome_extension"] = "Chrome 瀏覽器擴充功能"
|
zh_tw["chrome_extension"] = "Chrome 瀏覽器擴充功能"
|
||||||
zh_tw["disable_adjacent_seat"] = "允許不連續座位"
|
zh_tw["disable_adjacent_seat"] = "允許不連續座位"
|
||||||
|
@ -450,8 +452,9 @@ def load_translate():
|
||||||
zh_cn["ticketplus_password"] = '远大 密码'
|
zh_cn["ticketplus_password"] = '远大 密码'
|
||||||
zh_cn["save_password_alert"] = '将密码保存到文件中可能会暴露您的密码。'
|
zh_cn["save_password_alert"] = '将密码保存到文件中可能会暴露您的密码。'
|
||||||
|
|
||||||
zh_cn["play_captcha_sound"] = '订购时播放音效'
|
zh_cn["play_ticket_sound"] = '有票时播放音效'
|
||||||
zh_cn["captcha_sound_filename"] = '音效档'
|
zh_cn["play_order_sound"] = '订购时播放音效'
|
||||||
|
zh_cn["play_sound_filename"] = '音效档'
|
||||||
|
|
||||||
zh_cn["chrome_extension"] = "Chrome 浏览器扩展程序"
|
zh_cn["chrome_extension"] = "Chrome 浏览器扩展程序"
|
||||||
zh_cn["disable_adjacent_seat"] = "允许不连续座位"
|
zh_cn["disable_adjacent_seat"] = "允许不连续座位"
|
||||||
|
@ -566,8 +569,9 @@ def load_translate():
|
||||||
ja_jp["ticketplus_password"] = '遠大のパスワード'
|
ja_jp["ticketplus_password"] = '遠大のパスワード'
|
||||||
ja_jp["save_password_alert"] = 'パスワードをファイルに保存すると、パスワードが公開される可能性があります。'
|
ja_jp["save_password_alert"] = 'パスワードをファイルに保存すると、パスワードが公開される可能性があります。'
|
||||||
|
|
||||||
ja_jp["play_captcha_sound"] = '注文時に音を鳴らす'
|
ja_jp["play_ticket_sound"] = '有票時に音を鳴らす'
|
||||||
ja_jp["captcha_sound_filename"] = 'サウンドファイル'
|
ja_jp["play_order_sound"] = '注文時に音を鳴らす'
|
||||||
|
ja_jp["play_sound_filename"] = 'サウンドファイル'
|
||||||
|
|
||||||
ja_jp["chrome_extension"] = "Chrome ブラウザ拡張機能"
|
ja_jp["chrome_extension"] = "Chrome ブラウザ拡張機能"
|
||||||
ja_jp["disable_adjacent_seat"] = "連続しない座席も可"
|
ja_jp["disable_adjacent_seat"] = "連続しない座席も可"
|
||||||
|
@ -693,9 +697,10 @@ def get_default_config():
|
||||||
|
|
||||||
config_dict['advanced']={}
|
config_dict['advanced']={}
|
||||||
|
|
||||||
config_dict['advanced']['play_captcha_sound']={}
|
config_dict['advanced']['play_sound']={}
|
||||||
config_dict["advanced"]["play_captcha_sound"]["enable"] = True
|
config_dict["advanced"]["play_sound"]["ticket"] = True
|
||||||
config_dict["advanced"]["play_captcha_sound"]["filename"] = CONST_CAPTCHA_SOUND_FILENAME_DEFAULT
|
config_dict["advanced"]["play_sound"]["order"] = True
|
||||||
|
config_dict["advanced"]["play_sound"]["filename"] = CONST_CAPTCHA_SOUND_FILENAME_DEFAULT
|
||||||
|
|
||||||
config_dict["advanced"]["tixcraft_sid"] = ""
|
config_dict["advanced"]["tixcraft_sid"] = ""
|
||||||
config_dict["advanced"]["ibonqware"] = ""
|
config_dict["advanced"]["ibonqware"] = ""
|
||||||
|
@ -872,8 +877,9 @@ def btn_save_act(language_code, slience_mode=False):
|
||||||
global txt_udn_password
|
global txt_udn_password
|
||||||
global txt_ticketplus_password
|
global txt_ticketplus_password
|
||||||
|
|
||||||
global chk_state_play_captcha_sound
|
global chk_state_play_ticket_sound
|
||||||
global txt_captcha_sound_filename
|
global chk_state_play_order_sound
|
||||||
|
global txt_play_sound_filename
|
||||||
global chk_state_ocr_captcha
|
global chk_state_ocr_captcha
|
||||||
global chk_state_ocr_captcha_ddddocr_beta
|
global chk_state_ocr_captcha_ddddocr_beta
|
||||||
global chk_state_ocr_captcha_force_submit
|
global chk_state_ocr_captcha_force_submit
|
||||||
|
@ -1064,8 +1070,9 @@ def btn_save_act(language_code, slience_mode=False):
|
||||||
config_dict["area_auto_select"]["enable"] = bool(chk_state_area_auto_select.get())
|
config_dict["area_auto_select"]["enable"] = bool(chk_state_area_auto_select.get())
|
||||||
config_dict["area_auto_select"]["mode"] = combo_area_auto_select_mode.get().strip()
|
config_dict["area_auto_select"]["mode"] = combo_area_auto_select_mode.get().strip()
|
||||||
|
|
||||||
config_dict["advanced"]["play_captcha_sound"]["enable"] = bool(chk_state_play_captcha_sound.get())
|
config_dict["advanced"]["play_sound"]["ticket"] = bool(chk_state_play_ticket_sound.get())
|
||||||
config_dict["advanced"]["play_captcha_sound"]["filename"] = txt_captcha_sound_filename.get().strip()
|
config_dict["advanced"]["play_sound"]["order"] = bool(chk_state_play_order_sound.get())
|
||||||
|
config_dict["advanced"]["play_sound"]["filename"] = txt_play_sound_filename.get().strip()
|
||||||
|
|
||||||
config_dict["advanced"]["tixcraft_sid"] = txt_tixcraft_sid.get().strip()
|
config_dict["advanced"]["tixcraft_sid"] = txt_tixcraft_sid.get().strip()
|
||||||
config_dict["advanced"]["ibonqware"] = txt_ibon_ibonqware.get().strip()
|
config_dict["advanced"]["ibonqware"] = txt_ibon_ibonqware.get().strip()
|
||||||
|
@ -1301,8 +1308,8 @@ def btn_open_text_server_clicked():
|
||||||
tabControl.select(tab4)
|
tabControl.select(tab4)
|
||||||
|
|
||||||
def btn_preview_sound_clicked():
|
def btn_preview_sound_clicked():
|
||||||
global txt_captcha_sound_filename
|
global txt_play_sound_filename
|
||||||
new_sound_filename = txt_captcha_sound_filename.get().strip()
|
new_sound_filename = txt_play_sound_filename.get().strip()
|
||||||
#print("new_sound_filename:", new_sound_filename)
|
#print("new_sound_filename:", new_sound_filename)
|
||||||
app_root = get_app_root()
|
app_root = get_app_root()
|
||||||
new_sound_filename = os.path.join(app_root, new_sound_filename)
|
new_sound_filename = os.path.join(app_root, new_sound_filename)
|
||||||
|
@ -1407,7 +1414,8 @@ def applyNewLanguage():
|
||||||
global chk_area_auto_select
|
global chk_area_auto_select
|
||||||
global chk_pass_date_is_sold_out
|
global chk_pass_date_is_sold_out
|
||||||
global chk_auto_reload_coming_soon_page
|
global chk_auto_reload_coming_soon_page
|
||||||
global chk_play_captcha_sound
|
global chk_play_ticket_sound
|
||||||
|
global chk_play_order_sound
|
||||||
global chk_ocr_captcha
|
global chk_ocr_captcha
|
||||||
global chk_ocr_captcha_ddddocr_beta
|
global chk_ocr_captcha_ddddocr_beta
|
||||||
global chk_ocr_captcha_force_submit
|
global chk_ocr_captcha_force_submit
|
||||||
|
@ -1506,7 +1514,8 @@ def applyNewLanguage():
|
||||||
chk_area_auto_select.config(text=translate[language_code]["enable"])
|
chk_area_auto_select.config(text=translate[language_code]["enable"])
|
||||||
chk_pass_date_is_sold_out.config(text=translate[language_code]["enable"])
|
chk_pass_date_is_sold_out.config(text=translate[language_code]["enable"])
|
||||||
chk_auto_reload_coming_soon_page.config(text=translate[language_code]["enable"])
|
chk_auto_reload_coming_soon_page.config(text=translate[language_code]["enable"])
|
||||||
chk_play_captcha_sound.config(text=translate[language_code]["enable"])
|
chk_play_ticket_sound.config(text=translate[language_code]["enable"])
|
||||||
|
chk_play_order_sound.config(text=translate[language_code]["enable"])
|
||||||
chk_ocr_captcha.config(text=translate[language_code]["enable"])
|
chk_ocr_captcha.config(text=translate[language_code]["enable"])
|
||||||
chk_ocr_captcha_ddddocr_beta.config(text=translate[language_code]["enable"])
|
chk_ocr_captcha_ddddocr_beta.config(text=translate[language_code]["enable"])
|
||||||
chk_ocr_captcha_force_submit.config(text=translate[language_code]["enable"])
|
chk_ocr_captcha_force_submit.config(text=translate[language_code]["enable"])
|
||||||
|
@ -1554,8 +1563,9 @@ def applyNewLanguage():
|
||||||
|
|
||||||
global lbl_save_password_alert
|
global lbl_save_password_alert
|
||||||
|
|
||||||
global lbl_play_captcha_sound
|
global lbl_play_ticket_sound
|
||||||
global lbl_captcha_sound_filename
|
global lbl_play_order_sound
|
||||||
|
global lbl_play_sound_filename
|
||||||
|
|
||||||
lbl_tixcraft_sid.config(text=translate[language_code]["tixcraft_sid"])
|
lbl_tixcraft_sid.config(text=translate[language_code]["tixcraft_sid"])
|
||||||
lbl_ibon_ibonqware.config(text=translate[language_code]["ibon_ibonqware"])
|
lbl_ibon_ibonqware.config(text=translate[language_code]["ibon_ibonqware"])
|
||||||
|
@ -1582,8 +1592,9 @@ def applyNewLanguage():
|
||||||
|
|
||||||
lbl_save_password_alert.config(text=translate[language_code]["save_password_alert"])
|
lbl_save_password_alert.config(text=translate[language_code]["save_password_alert"])
|
||||||
|
|
||||||
lbl_play_captcha_sound.config(text=translate[language_code]["play_captcha_sound"])
|
lbl_play_ticket_sound.config(text=translate[language_code]["play_ticket_sound"])
|
||||||
lbl_captcha_sound_filename.config(text=translate[language_code]["captcha_sound_filename"])
|
lbl_play_order_sound.config(text=translate[language_code]["play_order_sound"])
|
||||||
|
lbl_play_sound_filename.config(text=translate[language_code]["play_sound_filename"])
|
||||||
|
|
||||||
lbl_slogan.config(text=translate[language_code]["maxbot_slogan"])
|
lbl_slogan.config(text=translate[language_code]["maxbot_slogan"])
|
||||||
lbl_help.config(text=translate[language_code]["help"])
|
lbl_help.config(text=translate[language_code]["help"])
|
||||||
|
@ -2009,11 +2020,11 @@ def AdvancedTab(root, config_dict, language_code, UI_PADDING_X):
|
||||||
group_row_count = 0
|
group_row_count = 0
|
||||||
|
|
||||||
# assign default value.
|
# assign default value.
|
||||||
captcha_sound_filename = config_dict["advanced"]["play_captcha_sound"]["filename"].strip()
|
play_sound_filename = config_dict["advanced"]["play_sound"]["filename"].strip()
|
||||||
if captcha_sound_filename is None:
|
if play_sound_filename is None:
|
||||||
captcha_sound_filename = ""
|
play_sound_filename = ""
|
||||||
if len(captcha_sound_filename)==0:
|
if len(play_sound_filename)==0:
|
||||||
captcha_sound_filename = captcha_sound_filename_default
|
play_sound_filename = play_sound_filename_default
|
||||||
|
|
||||||
global lbl_browser
|
global lbl_browser
|
||||||
lbl_browser = Label(frame_group_header, text=translate[language_code]['browser'])
|
lbl_browser = Label(frame_group_header, text=translate[language_code]['browser'])
|
||||||
|
@ -2064,28 +2075,42 @@ def AdvancedTab(root, config_dict, language_code, UI_PADDING_X):
|
||||||
|
|
||||||
group_row_count +=1
|
group_row_count +=1
|
||||||
|
|
||||||
global lbl_play_captcha_sound
|
global lbl_play_ticket_sound
|
||||||
lbl_play_captcha_sound = Label(frame_group_header, text=translate[language_code]['play_captcha_sound'])
|
lbl_play_ticket_sound = Label(frame_group_header, text=translate[language_code]['play_ticket_sound'])
|
||||||
lbl_play_captcha_sound.grid(column=0, row=group_row_count, sticky = E)
|
lbl_play_ticket_sound.grid(column=0, row=group_row_count, sticky = E)
|
||||||
|
|
||||||
global chk_state_play_captcha_sound
|
global chk_state_play_ticket_sound
|
||||||
chk_state_play_captcha_sound = BooleanVar()
|
chk_state_play_ticket_sound = BooleanVar()
|
||||||
chk_state_play_captcha_sound.set(config_dict["advanced"]["play_captcha_sound"]["enable"])
|
chk_state_play_ticket_sound.set(config_dict["advanced"]["play_sound"]["ticket"])
|
||||||
|
|
||||||
global chk_play_captcha_sound
|
global chk_play_ticket_sound
|
||||||
chk_play_captcha_sound = Checkbutton(frame_group_header, text=translate[language_code]['enable'], variable=chk_state_play_captcha_sound)
|
chk_play_ticket_sound = Checkbutton(frame_group_header, text=translate[language_code]['enable'], variable=chk_state_play_ticket_sound)
|
||||||
chk_play_captcha_sound.grid(column=1, row=group_row_count, sticky = W)
|
chk_play_ticket_sound.grid(column=1, row=group_row_count, sticky = W)
|
||||||
|
|
||||||
group_row_count +=1
|
group_row_count +=1
|
||||||
|
|
||||||
global lbl_captcha_sound_filename
|
global lbl_play_order_sound
|
||||||
lbl_captcha_sound_filename = Label(frame_group_header, text=translate[language_code]['captcha_sound_filename'])
|
lbl_play_order_sound = Label(frame_group_header, text=translate[language_code]['play_order_sound'])
|
||||||
lbl_captcha_sound_filename.grid(column=0, row=group_row_count, sticky = E)
|
lbl_play_order_sound.grid(column=0, row=group_row_count, sticky = E)
|
||||||
|
|
||||||
global txt_captcha_sound_filename
|
global chk_state_play_order_sound
|
||||||
txt_captcha_sound_filename_value = StringVar(frame_group_header, value=captcha_sound_filename)
|
chk_state_play_order_sound = BooleanVar()
|
||||||
txt_captcha_sound_filename = Entry(frame_group_header, width=30, textvariable = txt_captcha_sound_filename_value)
|
chk_state_play_order_sound.set(config_dict["advanced"]["play_sound"]["order"])
|
||||||
txt_captcha_sound_filename.grid(column=1, row=group_row_count, sticky = W)
|
|
||||||
|
global chk_play_order_sound
|
||||||
|
chk_play_order_sound = Checkbutton(frame_group_header, text=translate[language_code]['enable'], variable=chk_state_play_order_sound)
|
||||||
|
chk_play_order_sound.grid(column=1, row=group_row_count, sticky = W)
|
||||||
|
|
||||||
|
group_row_count +=1
|
||||||
|
|
||||||
|
global lbl_play_sound_filename
|
||||||
|
lbl_play_sound_filename = Label(frame_group_header, text=translate[language_code]['play_sound_filename'])
|
||||||
|
lbl_play_sound_filename.grid(column=0, row=group_row_count, sticky = E)
|
||||||
|
|
||||||
|
global txt_play_sound_filename
|
||||||
|
txt_play_sound_filename_value = StringVar(frame_group_header, value=play_sound_filename)
|
||||||
|
txt_play_sound_filename = Entry(frame_group_header, width=30, textvariable = txt_play_sound_filename_value)
|
||||||
|
txt_play_sound_filename.grid(column=1, row=group_row_count, sticky = W)
|
||||||
|
|
||||||
icon_play_filename = "icon_play_1.gif"
|
icon_play_filename = "icon_play_1.gif"
|
||||||
icon_play_img = PhotoImage(file=icon_play_filename)
|
icon_play_img = PhotoImage(file=icon_play_filename)
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{"homepage": "https://tixcraft.com", "browser": "chrome", "language": "\u7e41\u9ad4\u4e2d\u6587", "ticket_number": 2, "ocr_captcha": {"enable": true, "beta": true, "force_submit": true, "image_source": "canvas"}, "webdriver_type": "undetected_chromedriver", "date_auto_select": {"enable": true, "date_keyword": "", "mode": "random"}, "area_auto_select": {"enable": true, "mode": "random", "area_keyword": ""}, "keyword_exclude": "\"\u8f2a\u6905\",\"\u8eab\u969c\",\"\u8eab\u5fc3 \u969c\u7919\",\"Restricted View\",\"\u71c8\u67f1\u906e\u853d\",\"\u8996\u7dda\u4e0d\u5b8c\u6574\"", "kktix": {"auto_press_next_step_button": true, "auto_fill_ticket_number": true}, "tixcraft": {"pass_date_is_sold_out": true, "auto_reload_coming_soon_page": true}, "advanced": {"play_captcha_sound": {"enable": true, "filename": "ding-dong.wav"}, "tixcraft_sid": "", "ibonqware": "", "facebook_account": "", "kktix_account": "", "fami_account": "", "cityline_account": "", "urbtix_account": "", "hkticketing_account": "", "kham_account": "", "ticket_account": "", "udn_account": "", "ticketplus_account": "", "facebook_password": "", "kktix_password": "", "fami_password": "", "urbtix_password": "", "cityline_password": "", "hkticketing_password": "", "kham_password": "", "ticket_password": "", "udn_password": "", "ticketplus_password": "", "facebook_password_plaintext": "", "kktix_password_plaintext": "", "fami_password_plaintext": "", "urbtix_password_plaintext": "", "cityline_password_plaintext": "", "hkticketing_password_plaintext": "", "kham_password_plaintext": "", "ticket_password_plaintext": "", "udn_password_plaintext": "", "ticketplus_password_plaintext": "", "chrome_extension": true, "disable_adjacent_seat": false, "hide_some_image": true, "block_facebook_network": false, "headless": false, "verbose": false, "auto_guess_options": true, "user_guess_string": "", "remote_url": "\"http://127.0.0.1:16888/\"", "auto_reload_page_interval": 0.1, "reset_browser_interval": 0.0, "proxy_server_port": "", "idle_keyword": "", "resume_keyword": "", "idle_keyword_second": "", "resume_keyword_second": ""}, "domain_filter": ["*google-analytics.com/*", "*googletagmanager.com/*", "*googletagservices.com/*", "*lndata.com/*", "*a.amnet.tw/*", "*adx.c.appier.net/*", "*clarity.ms/*", "*cloudfront.com/*", "*cms.analytics.yahoo.com/*", "*doubleclick.net/*", "*e2elog.fetnet.net/*", "*fundingchoicesmessages.google.com/*", "*ghtinc.com/*", "*match.adsrvr.org/*", "*onead.onevision.com.tw/*", "*popin.cc/*", "*rollbar.com/*", "*sb.scorecardresearch.com/*", "*tagtoo.co/*", "*.ssp.hinet.net/*", "*ticketmaster.sg/js/adblock*", "*.googlesyndication.com/*", "*treasuredata.com/*", "*play.google.com/log?*", "*www.youtube.com/youtubei/v1/player/heartbeat*", "*tixcraft.com/js/analytics.js*", "*ticketmaster.sg/js/adblock.js*", "*img.uniicreative.com/*", "*cdn.cookielaw.org/*", "*tixcraft.com/js/custom.js*", "*tixcraft.com/js/common.js*", "*cdnjs.cloudflare.com/ajax/libs/clipboard.js/*"]}
|
{"homepage": "https://tixcraft.com", "browser": "chrome", "language": "\u7e41\u9ad4\u4e2d\u6587", "ticket_number": 2, "ocr_captcha": {"enable": true, "beta": true, "force_submit": true, "image_source": "canvas"}, "webdriver_type": "undetected_chromedriver", "date_auto_select": {"enable": true, "date_keyword": "", "mode": "random"}, "area_auto_select": {"enable": true, "mode": "random", "area_keyword": ""}, "keyword_exclude": "\"\u8f2a\u6905\",\"\u8eab\u969c\",\"\u8eab\u5fc3 \u969c\u7919\",\"Restricted View\",\"\u71c8\u67f1\u906e\u853d\",\"\u8996\u7dda\u4e0d\u5b8c\u6574\"", "kktix": {"auto_press_next_step_button": true, "auto_fill_ticket_number": true}, "tixcraft": {"pass_date_is_sold_out": true, "auto_reload_coming_soon_page": true}, "advanced": {"play_sound": {"ticket": true, "order": true, "filename": "ding-dong.wav"}, "tixcraft_sid": "", "ibonqware": "", "facebook_account": "", "kktix_account": "", "fami_account": "", "cityline_account": "", "urbtix_account": "", "hkticketing_account": "", "kham_account": "", "ticket_account": "", "udn_account": "", "ticketplus_account": "", "facebook_password": "", "kktix_password": "", "fami_password": "", "urbtix_password": "", "cityline_password": "", "hkticketing_password": "", "kham_password": "", "ticket_password": "", "udn_password": "", "ticketplus_password": "", "facebook_password_plaintext": "", "kktix_password_plaintext": "", "fami_password_plaintext": "", "urbtix_password_plaintext": "", "cityline_password_plaintext": "", "hkticketing_password_plaintext": "", "kham_password_plaintext": "", "ticket_password_plaintext": "", "udn_password_plaintext": "", "ticketplus_password_plaintext": "", "chrome_extension": true, "disable_adjacent_seat": false, "hide_some_image": true, "block_facebook_network": false, "headless": false, "verbose": false, "auto_guess_options": true, "user_guess_string": "", "remote_url": "\"http://127.0.0.1:16888/\"", "auto_reload_page_interval": 0.1, "reset_browser_interval": 0.0, "proxy_server_port": "", "idle_keyword": "", "resume_keyword": "", "idle_keyword_second": "", "resume_keyword_second": ""}, "domain_filter": ["*google-analytics.com/*", "*googletagmanager.com/*", "*googletagservices.com/*", "*lndata.com/*", "*a.amnet.tw/*", "*adx.c.appier.net/*", "*clarity.ms/*", "*cloudfront.com/*", "*cms.analytics.yahoo.com/*", "*doubleclick.net/*", "*e2elog.fetnet.net/*", "*fundingchoicesmessages.google.com/*", "*ghtinc.com/*", "*match.adsrvr.org/*", "*onead.onevision.com.tw/*", "*popin.cc/*", "*rollbar.com/*", "*sb.scorecardresearch.com/*", "*tagtoo.co/*", "*.ssp.hinet.net/*", "*ticketmaster.sg/js/adblock*", "*.googlesyndication.com/*", "*treasuredata.com/*", "*play.google.com/log?*", "*www.youtube.com/youtubei/v1/player/heartbeat*", "*tixcraft.com/js/analytics.js*", "*ticketmaster.sg/js/adblock.js*", "*img.uniicreative.com/*", "*cdn.cookielaw.org/*", "*tixcraft.com/js/custom.js*", "*tixcraft.com/js/common.js*", "*cdnjs.cloudflare.com/ajax/libs/clipboard.js/*"]}
|
|
@ -1 +1 @@
|
||||||
{"homepage": "https://tixcraft.com", "browser": "chrome", "language": "\u7e41\u9ad4\u4e2d\u6587", "ticket_number": 2, "ocr_captcha": {"enable": true, "beta": true, "force_submit": true, "image_source": "canvas"}, "webdriver_type": "undetected_chromedriver", "date_auto_select": {"enable": true, "date_keyword": "", "mode": "random"}, "area_auto_select": {"enable": true, "mode": "random", "area_keyword": ""}, "keyword_exclude": "\"\u8f2a\u6905\",\"\u8eab\u969c\",\"\u8eab\u5fc3 \u969c\u7919\",\"Restricted View\",\"\u71c8\u67f1\u906e\u853d\",\"\u8996\u7dda\u4e0d\u5b8c\u6574\"", "kktix": {"auto_press_next_step_button": true, "auto_fill_ticket_number": true}, "tixcraft": {"pass_date_is_sold_out": true, "auto_reload_coming_soon_page": true}, "advanced": {"play_captcha_sound": {"enable": true, "filename": "ding-dong.wav"}, "tixcraft_sid": "", "ibonqware": "", "facebook_account": "", "kktix_account": "", "fami_account": "", "cityline_account": "", "urbtix_account": "", "hkticketing_account": "", "kham_account": "", "ticket_account": "", "udn_account": "", "ticketplus_account": "", "facebook_password": "", "kktix_password": "", "fami_password": "", "urbtix_password": "", "cityline_password": "", "hkticketing_password": "", "kham_password": "", "ticket_password": "", "udn_password": "", "ticketplus_password": "", "facebook_password_plaintext": "", "kktix_password_plaintext": "", "fami_password_plaintext": "", "urbtix_password_plaintext": "", "cityline_password_plaintext": "", "hkticketing_password_plaintext": "", "kham_password_plaintext": "", "ticket_password_plaintext": "", "udn_password_plaintext": "", "ticketplus_password_plaintext": "", "chrome_extension": true, "disable_adjacent_seat": false, "hide_some_image": true, "block_facebook_network": false, "headless": false, "verbose": false, "auto_guess_options": true, "user_guess_string": "", "remote_url": "\"http://127.0.0.1:16888/\"", "auto_reload_page_interval": 0.1, "reset_browser_interval": 0.0, "proxy_server_port": "", "idle_keyword": "", "resume_keyword": "", "idle_keyword_second": "", "resume_keyword_second": ""}}
|
{"homepage": "https://tixcraft.com", "browser": "chrome", "language": "\u7e41\u9ad4\u4e2d\u6587", "ticket_number": 2, "ocr_captcha": {"enable": true, "beta": true, "force_submit": true, "image_source": "canvas"}, "webdriver_type": "undetected_chromedriver", "date_auto_select": {"enable": true, "date_keyword": "", "mode": "random"}, "area_auto_select": {"enable": true, "mode": "random", "area_keyword": ""}, "keyword_exclude": "\"\u8f2a\u6905\",\"\u8eab\u969c\",\"\u8eab\u5fc3 \u969c\u7919\",\"Restricted View\",\"\u71c8\u67f1\u906e\u853d\",\"\u8996\u7dda\u4e0d\u5b8c\u6574\"", "kktix": {"auto_press_next_step_button": true, "auto_fill_ticket_number": true}, "tixcraft": {"pass_date_is_sold_out": true, "auto_reload_coming_soon_page": true}, "advanced": {"play_sound": {"ticket": true, "order": true, "filename": "ding-dong.wav"}, "tixcraft_sid": "", "ibonqware": "", "facebook_account": "", "kktix_account": "", "fami_account": "", "cityline_account": "", "urbtix_account": "", "hkticketing_account": "", "kham_account": "", "ticket_account": "", "udn_account": "", "ticketplus_account": "", "facebook_password": "", "kktix_password": "", "fami_password": "", "urbtix_password": "", "cityline_password": "", "hkticketing_password": "", "kham_password": "", "ticket_password": "", "udn_password": "", "ticketplus_password": "", "facebook_password_plaintext": "", "kktix_password_plaintext": "", "fami_password_plaintext": "", "urbtix_password_plaintext": "", "cityline_password_plaintext": "", "hkticketing_password_plaintext": "", "kham_password_plaintext": "", "ticket_password_plaintext": "", "udn_password_plaintext": "", "ticketplus_password_plaintext": "", "chrome_extension": true, "disable_adjacent_seat": false, "hide_some_image": true, "block_facebook_network": false, "headless": false, "verbose": false, "auto_guess_options": true, "user_guess_string": "", "remote_url": "\"http://127.0.0.1:16888/\"", "auto_reload_page_interval": 0.1, "reset_browser_interval": 0.0, "proxy_server_port": "", "idle_keyword": "", "resume_keyword": "", "idle_keyword_second": "", "resume_keyword_second": ""}}
|
Loading…
Reference in New Issue