2024-03-23
parent
d90094e3bc
commit
3b4074dbca
|
@ -44,7 +44,7 @@ except Exception as exc:
|
|||
print(exc)
|
||||
pass
|
||||
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.22)"
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.23)"
|
||||
|
||||
CONST_MAXBOT_ANSWER_ONLINE_FILE = "MAXBOT_ONLINE_ANSWER.txt"
|
||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||
|
@ -248,7 +248,6 @@ def get_chrome_options(webdriver_path, config_dict):
|
|||
chrome_options.add_argument('--headless=new')
|
||||
|
||||
chrome_options.add_argument("--user-agent=%s" % (USER_AGENT))
|
||||
chrome_options.add_argument("--password-store=basic")
|
||||
chrome_options.add_argument("--disable-animations")
|
||||
chrome_options.add_argument("--disable-background-networking")
|
||||
chrome_options.add_argument("--disable-backgrounding-occluded-windows")
|
||||
|
@ -266,7 +265,7 @@ def get_chrome_options(webdriver_path, config_dict):
|
|||
chrome_options.add_argument("--disable-device-discovery-notifications")
|
||||
chrome_options.add_argument("--disable-dinosaur-easter-egg")
|
||||
chrome_options.add_argument("--disable-domain-reliability")
|
||||
chrome_options.add_argument("--disable-features=IsolateOrigins,site-per-process,TranslateUI")
|
||||
chrome_options.add_argument("--disable-features=IsolateOrigins,site-per-process,TranslateUI,PrivacySandboxSettings4")
|
||||
chrome_options.add_argument("--disable-infobars")
|
||||
chrome_options.add_argument("--disable-logging")
|
||||
chrome_options.add_argument("--disable-login-animations")
|
||||
|
@ -277,20 +276,23 @@ def get_chrome_options(webdriver_path, config_dict):
|
|||
chrome_options.add_argument("--disable-renderer-backgrounding")
|
||||
chrome_options.add_argument("--disable-session-crashed-bubble")
|
||||
chrome_options.add_argument("--disable-smooth-scrolling")
|
||||
chrome_options.add_argument("--disable-suggestions-ui")
|
||||
chrome_options.add_argument("--disable-sync")
|
||||
chrome_options.add_argument("--disable-translate")
|
||||
chrome_options.add_argument("--hide-crash-restore-bubble")
|
||||
chrome_options.add_argument("--lang=zh-TW")
|
||||
chrome_options.add_argument("--no-default-browser-check")
|
||||
chrome_options.add_argument("--no-first-run")
|
||||
chrome_options.add_argument("--no-pings")
|
||||
chrome_options.add_argument("--no-sandbox")
|
||||
chrome_options.add_argument("--no-service-autorun")
|
||||
chrome_options.add_argument("--password-store=basic")
|
||||
|
||||
# for navigator.webdriver
|
||||
chrome_options.add_experimental_option("excludeSwitches", ['enable-automation'])
|
||||
# Deprecated chrome option is ignored: useAutomationExtension
|
||||
#chrome_options.add_experimental_option('useAutomationExtension', False)
|
||||
chrome_options.add_experimental_option("prefs", {"credentials_enable_service": False, "profile.password_manager_enabled": False, "translate":{"enabled": False}})
|
||||
chrome_options.add_experimental_option("prefs", {"credentials_enable_service": False, "profile.password_manager_enabled": False, "profile.name": CONST_APP_VERSION, "translate":{"enabled": False}})
|
||||
|
||||
if len(config_dict["advanced"]["proxy_server_port"]) > 2:
|
||||
chrome_options.add_argument('--proxy-server=%s' % config_dict["advanced"]["proxy_server_port"])
|
||||
|
@ -414,7 +416,6 @@ def get_uc_options(uc, config_dict, webdriver_path):
|
|||
options.add_argument('--headless=new')
|
||||
|
||||
options.add_argument("--user-agent=%s" % (USER_AGENT))
|
||||
options.add_argument("--password-store=basic")
|
||||
options.add_argument("--disable-animations")
|
||||
options.add_argument("--disable-background-networking")
|
||||
options.add_argument("--disable-backgrounding-occluded-windows")
|
||||
|
@ -432,7 +433,7 @@ def get_uc_options(uc, config_dict, webdriver_path):
|
|||
options.add_argument("--disable-device-discovery-notifications")
|
||||
options.add_argument("--disable-dinosaur-easter-egg")
|
||||
options.add_argument("--disable-domain-reliability")
|
||||
options.add_argument("--disable-features=IsolateOrigins,site-per-process,TranslateUI")
|
||||
options.add_argument("--disable-features=IsolateOrigins,site-per-process,TranslateUI,PrivacySandboxSettings4")
|
||||
options.add_argument("--disable-infobars")
|
||||
options.add_argument("--disable-logging")
|
||||
options.add_argument("--disable-login-animations")
|
||||
|
@ -443,15 +444,18 @@ def get_uc_options(uc, config_dict, webdriver_path):
|
|||
options.add_argument("--disable-renderer-backgrounding")
|
||||
options.add_argument("--disable-session-crashed-bubble")
|
||||
options.add_argument("--disable-smooth-scrolling")
|
||||
options.add_argument("--disable-suggestions-ui")
|
||||
options.add_argument("--disable-sync")
|
||||
options.add_argument("--disable-translate")
|
||||
options.add_argument("--hide-crash-restore-bubble")
|
||||
options.add_argument("--lang=zh-TW")
|
||||
options.add_argument("--no-default-browser-check")
|
||||
options.add_argument("--no-first-run")
|
||||
options.add_argument("--no-pings")
|
||||
options.add_argument("--no-sandbox")
|
||||
options.add_argument("--no-service-autorun")
|
||||
options.add_experimental_option("prefs", {"credentials_enable_service": False, "profile.password_manager_enabled": False, "translate":{"enabled": False}})
|
||||
options.add_argument("--password-store=basic")
|
||||
options.add_experimental_option("prefs", {"credentials_enable_service": False, "profile.password_manager_enabled": False, "profile.name": CONST_APP_VERSION, "translate":{"enabled": False}})
|
||||
|
||||
if len(config_dict["advanced"]["proxy_server_port"]) > 2:
|
||||
options.add_argument('--proxy-server=%s' % config_dict["advanced"]["proxy_server_port"])
|
||||
|
@ -6250,7 +6254,11 @@ def kktix_main(driver, url, config_dict, kktix_dict):
|
|||
print("基本資料(或實名制)網址:", url)
|
||||
if len(kktix_account) > 0:
|
||||
print("搶票成功, 帳號:", kktix_account)
|
||||
threading.Thread(target=launch_maxbot, args=("", url, kktix_account, kktix_password, "false", )).start()
|
||||
|
||||
script_name = "chrome_tixcraft"
|
||||
if config_dict["advanced"]["webdriver_type"] == CONST_WEBDRIVER_TYPE_NODRIVER:
|
||||
script_name = "nodriver_tixcraft"
|
||||
threading.Thread(target=util.launch_maxbot, args=(script_name,"", url, kktix_account, kktix_password,"","false",)).start()
|
||||
#driver.quit()
|
||||
#sys.exit()
|
||||
|
||||
|
@ -10868,53 +10876,6 @@ def resize_window(driver, config_dict):
|
|||
driver.set_window_size(int(size_array[0]), int(size_array[1]))
|
||||
driver.set_window_position(position_left, 30)
|
||||
|
||||
def launch_maxbot(filename, homepage="", kktix_account = "", kktix_password="", headless="", script_name="chrome_tixcraft"):
|
||||
cmd_argument = []
|
||||
if len(filename) > 0:
|
||||
cmd_argument.append('--input=' + filename)
|
||||
if len(homepage) > 0:
|
||||
cmd_argument.append('--homepage=' + homepage)
|
||||
if len(kktix_account) > 0:
|
||||
cmd_argument.append('--kktix_account=' + kktix_account)
|
||||
if len(kktix_password) > 0:
|
||||
cmd_argument.append('--kktix_password=' + kktix_password)
|
||||
if len(headless) > 0:
|
||||
cmd_argument.append('--headless=' + headless)
|
||||
|
||||
working_dir = os.path.dirname(os.path.realpath(__file__))
|
||||
if hasattr(sys, 'frozen'):
|
||||
print("execute in frozen mode")
|
||||
# check platform here.
|
||||
cmd = './' + script_name + ' '.join(cmd_argument)
|
||||
if platform.system() == 'Darwin':
|
||||
print("execute MacOS python script")
|
||||
if platform.system() == 'Linux':
|
||||
print("execute linux binary")
|
||||
if platform.system() == 'Windows':
|
||||
print("execute .exe binary.")
|
||||
cmd = script_name + '.exe ' + ' '.join(cmd_argument)
|
||||
subprocess.Popen(cmd, shell=True, cwd=working_dir)
|
||||
else:
|
||||
interpreter_binary = 'python'
|
||||
interpreter_binary_alt = 'python3'
|
||||
if platform.system() != 'Windows':
|
||||
interpreter_binary = 'python3'
|
||||
interpreter_binary_alt = 'python'
|
||||
print("execute in shell mode.")
|
||||
|
||||
try:
|
||||
print('try', interpreter_binary)
|
||||
cmd_array = [interpreter_binary, script_name + '.py'] + cmd_argument
|
||||
s=subprocess.Popen(cmd_array, cwd=working_dir)
|
||||
except Exception as exc:
|
||||
print('try', interpreter_binary_alt)
|
||||
try:
|
||||
cmd_array = [interpreter_binary_alt, script_name + '.py'] + cmd_argument
|
||||
s=subprocess.Popen(cmd_array, cwd=working_dir)
|
||||
except Exception as exc:
|
||||
msg=str(exc)
|
||||
print("exeption:", msg)
|
||||
pass
|
||||
|
||||
def main(args):
|
||||
config_dict = get_config_dict(args)
|
||||
|
|
|
@ -24,7 +24,7 @@ import webbrowser
|
|||
|
||||
import util
|
||||
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.22)"
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.23)"
|
||||
|
||||
CONST_MAXBOT_LAUNCHER_FILE = "config_launcher.json"
|
||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||
|
|
|
@ -13,7 +13,7 @@ import requests
|
|||
|
||||
import util
|
||||
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.22)"
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.23)"
|
||||
|
||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||
USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36"
|
||||
|
|
|
@ -29,7 +29,7 @@ from datetime import datetime
|
|||
|
||||
import util
|
||||
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.22)"
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.23)"
|
||||
|
||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||
CONST_MAXBOT_KKTIX_CONFIG_FILE = "kktix.json"
|
||||
|
|
|
@ -32,7 +32,7 @@ except Exception as exc:
|
|||
print(exc)
|
||||
pass
|
||||
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.22)"
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.23)"
|
||||
|
||||
CONST_MAXBOT_ANSWER_ONLINE_FILE = "MAXBOT_ONLINE_ANSWER.txt"
|
||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||
|
@ -797,7 +797,12 @@ async def nodriver_kktix_main(tab, url, config_dict, kktix_dict):
|
|||
print("基本資料(或實名制)網址:", url)
|
||||
if len(kktix_account) > 0:
|
||||
print("搶票成功, 帳號:", kktix_account)
|
||||
threading.Thread(target=launch_maxbot, args=("", url, kktix_account, kktix_password, "false", )).start()
|
||||
|
||||
script_name = "chrome_tixcraft"
|
||||
if config_dict["advanced"]["webdriver_type"] == CONST_WEBDRIVER_TYPE_NODRIVER:
|
||||
script_name = "nodriver_tixcraft"
|
||||
|
||||
threading.Thread(target=util.launch_maxbot, args=(script_name,"", url, kktix_account, kktix_password,"","false",)).start()
|
||||
#driver.quit()
|
||||
#sys.exit()
|
||||
|
||||
|
@ -829,65 +834,10 @@ async def nodriver_kktix_main(tab, url, config_dict, kktix_dict):
|
|||
|
||||
return kktix_dict
|
||||
|
||||
def launch_maxbot(filename, homepage="", kktix_account = "", kktix_password="", headless="", script_name="nodriver_tixcraft"):
|
||||
cmd_argument = []
|
||||
if len(filename) > 0:
|
||||
cmd_argument.append('--input=' + filename)
|
||||
if len(homepage) > 0:
|
||||
cmd_argument.append('--homepage=' + homepage)
|
||||
if len(kktix_account) > 0:
|
||||
cmd_argument.append('--kktix_account=' + kktix_account)
|
||||
if len(kktix_password) > 0:
|
||||
cmd_argument.append('--kktix_password=' + kktix_password)
|
||||
if len(headless) > 0:
|
||||
cmd_argument.append('--headless=' + headless)
|
||||
|
||||
working_dir = os.path.dirname(os.path.realpath(__file__))
|
||||
if hasattr(sys, 'frozen'):
|
||||
print("execute in frozen mode")
|
||||
# check platform here.
|
||||
cmd = './' + script_name + ' '.join(cmd_argument)
|
||||
if platform.system() == 'Darwin':
|
||||
print("execute MacOS python script")
|
||||
if platform.system() == 'Linux':
|
||||
print("execute linux binary")
|
||||
if platform.system() == 'Windows':
|
||||
print("execute .exe binary.")
|
||||
cmd = script_name + '.exe ' + ' '.join(cmd_argument)
|
||||
subprocess.Popen(cmd, shell=True, cwd=working_dir)
|
||||
else:
|
||||
interpreter_binary = 'python'
|
||||
interpreter_binary_alt = 'python3'
|
||||
if platform.system() != 'Windows':
|
||||
interpreter_binary = 'python3'
|
||||
interpreter_binary_alt = 'python'
|
||||
print("execute in shell mode.")
|
||||
|
||||
try:
|
||||
print('try', interpreter_binary)
|
||||
cmd_array = [interpreter_binary, script_name + '.py'] + cmd_argument
|
||||
s=subprocess.Popen(cmd_array, cwd=working_dir)
|
||||
except Exception as exc:
|
||||
print('try', interpreter_binary_alt)
|
||||
try:
|
||||
cmd_array = [interpreter_binary_alt, script_name + '.py'] + cmd_argument
|
||||
s=subprocess.Popen(cmd_array, cwd=working_dir)
|
||||
except Exception as exc:
|
||||
msg=str(exc)
|
||||
print("exeption:", msg)
|
||||
pass
|
||||
|
||||
def get_nodriver_browser_args():
|
||||
browser_args = [
|
||||
"--user-agent=%s" % (USER_AGENT),
|
||||
"--remote-allow-origins=*",
|
||||
"--homepage=about:blank",
|
||||
"--no-first-run",
|
||||
"--no-service-autorun",
|
||||
"--no-default-browser-check",
|
||||
"--no-pings",
|
||||
"--no-sandbox"
|
||||
"--password-store=basic",
|
||||
"--disable-2d-canvas-clip-aa",
|
||||
"--disable-3d-apis",
|
||||
"--disable-animations",
|
||||
|
@ -920,10 +870,20 @@ def get_nodriver_browser_args():
|
|||
"--disable-renderer-backgrounding",
|
||||
"--disable-session-crashed-bubble",
|
||||
"--disable-smooth-scrolling",
|
||||
"--disable-suggestions-ui",
|
||||
"--disable-sync",
|
||||
"--disable-translate",
|
||||
#"--disable-remote-fonts",
|
||||
"--hide-crash-restore-bubble",
|
||||
"--homepage=about:blank",
|
||||
"--no-default-browser-check",
|
||||
"--no-first-run",
|
||||
"--no-pings",
|
||||
"--no-sandbox"
|
||||
"--no-service-autorun",
|
||||
"--password-store=basic",
|
||||
"--remote-allow-origins=*",
|
||||
"--lang=zh-TW",
|
||||
#"--disable-remote-fonts",
|
||||
]
|
||||
return browser_args
|
||||
|
||||
|
@ -1039,6 +999,33 @@ async def nodriver_current_url(tab):
|
|||
url = ''.join(url_array)
|
||||
return url
|
||||
|
||||
def nodriver_overwrite_prefs(conf, prefs_dict={}):
|
||||
#print(conf.user_data_dir)
|
||||
prefs_filepath = os.path.join(conf.user_data_dir,"Default")
|
||||
if not os.path.exists(prefs_filepath):
|
||||
os.mkdir(prefs_filepath)
|
||||
prefs_filepath = os.path.join(prefs_filepath,"Preferences")
|
||||
prefs_dict["profile"]={}
|
||||
prefs_dict["profile"]["name"]=CONST_APP_VERSION
|
||||
prefs_dict["profile"]["password_manager_enabled"]=False
|
||||
json_str = json.dumps(prefs_dict)
|
||||
with open(prefs_filepath, 'w') as outfile:
|
||||
outfile.write(json_str)
|
||||
|
||||
state_filepath = os.path.join(conf.user_data_dir,"Local State")
|
||||
state_dict = {}
|
||||
state_dict["performance_tuning"]={}
|
||||
state_dict["performance_tuning"]["high_efficiency_mode"]={}
|
||||
state_dict["performance_tuning"]["high_efficiency_mode"]["state"]=1
|
||||
state_dict["browser"]={}
|
||||
state_dict["browser"]["enabled_labs_experiments"]=[
|
||||
"memory-saver-multi-state-mode@1",
|
||||
"modal-memory-saver@1"
|
||||
]
|
||||
json_str = json.dumps(state_dict)
|
||||
with open(state_filepath, 'w') as outfile:
|
||||
outfile.write(json_str)
|
||||
|
||||
async def main(args):
|
||||
config_dict = get_config_dict(args)
|
||||
|
||||
|
@ -1047,6 +1034,10 @@ async def main(args):
|
|||
if not config_dict is None:
|
||||
sandbox = False
|
||||
conf = get_extension_config(config_dict)
|
||||
prefs = {"credentials_enable_service": False,
|
||||
"ack_existing_ntp_extensions": False,
|
||||
"translate":{"enabled": False}}
|
||||
nodriver_overwrite_prefs(conf, prefs)
|
||||
# PS: nodrirver run twice always cause error:
|
||||
# Failed to connect to browser
|
||||
# One of the causes could be when you are running as root.
|
||||
|
@ -1158,6 +1149,76 @@ async def main(args):
|
|||
kktix_dict = await nodriver_kktix_main(tab, url, config_dict, kktix_dict)
|
||||
pass
|
||||
|
||||
tixcraft_family = False
|
||||
if 'tixcraft.com' in url:
|
||||
tixcraft_family = True
|
||||
|
||||
if 'indievox.com' in url:
|
||||
tixcraft_family = True
|
||||
|
||||
if 'ticketmaster.' in url:
|
||||
tixcraft_family = True
|
||||
|
||||
if tixcraft_family:
|
||||
#tixcraft_dict = tixcraft_main(driver, url, config_dict, tixcraft_dict, ocr, Captcha_Browser)
|
||||
pass
|
||||
|
||||
if 'famiticket.com' in url:
|
||||
#fami_dict = famiticket_main(driver, url, config_dict, fami_dict)
|
||||
pass
|
||||
|
||||
if 'ibon.com' in url:
|
||||
#ibon_dict = ibon_main(driver, url, config_dict, ibon_dict, ocr, Captcha_Browser)
|
||||
pass
|
||||
|
||||
kham_family = False
|
||||
if 'kham.com.tw' in url:
|
||||
kham_family = True
|
||||
|
||||
if 'ticket.com.tw' in url:
|
||||
kham_family = True
|
||||
|
||||
if 'tickets.udnfunlife.com' in url:
|
||||
kham_family = True
|
||||
|
||||
if kham_family:
|
||||
#kham_main(driver, url, config_dict, ocr, Captcha_Browser)
|
||||
pass
|
||||
|
||||
if 'ticketplus.com' in url:
|
||||
#ticketplus_dict = ticketplus_main(driver, url, config_dict, ocr, Captcha_Browser, ticketplus_dict)
|
||||
pass
|
||||
|
||||
if 'urbtix.hk' in url:
|
||||
#urbtix_main(driver, url, config_dict)
|
||||
pass
|
||||
|
||||
if 'cityline.com' in url:
|
||||
#cityline_main(driver, url, config_dict)
|
||||
pass
|
||||
|
||||
softix_family = False
|
||||
if 'hkticketing.com' in url:
|
||||
softix_family = True
|
||||
if 'galaxymacau.com' in url:
|
||||
softix_family = True
|
||||
if 'ticketek.com' in url:
|
||||
softix_family = True
|
||||
if softix_family:
|
||||
#hkticketing_dict = softix_powerweb_main(driver, url, config_dict, hkticketing_dict)
|
||||
pass
|
||||
|
||||
# for facebook
|
||||
facebook_login_url = 'https://www.facebook.com/login.php?'
|
||||
if url[:len(facebook_login_url)]==facebook_login_url:
|
||||
facebook_account = config_dict["advanced"]["facebook_account"].strip()
|
||||
facebook_password = config_dict["advanced"]["facebook_password_plaintext"].strip()
|
||||
if facebook_password == "":
|
||||
facebook_password = util.decryptMe(config_dict["advanced"]["facebook_password"])
|
||||
if len(facebook_account) > 4:
|
||||
#facebook_login(driver, facebook_account, facebook_password)
|
||||
pass
|
||||
|
||||
|
||||
def cli():
|
||||
parser = argparse.ArgumentParser(
|
||||
|
|
|
@ -15,4 +15,5 @@ tornado
|
|||
undetected-chromedriver
|
||||
urllib3
|
||||
#PS: nodriver need python 3.9+
|
||||
#
|
||||
# nodriver max modified version:
|
||||
# python -m pip install git+https://github.com/max32002/nodriver
|
|
@ -41,7 +41,7 @@ try:
|
|||
except Exception as exc:
|
||||
pass
|
||||
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.22)"
|
||||
CONST_APP_VERSION = "MaxBot (2024.03.23)"
|
||||
|
||||
CONST_MAXBOT_ANSWER_ONLINE_FILE = "MAXBOT_ONLINE_ANSWER.txt"
|
||||
CONST_MAXBOT_CONFIG_FILE = "settings.json"
|
||||
|
|
4
util.py
4
util.py
|
@ -1913,7 +1913,7 @@ def get_kktix_status_by_url(url):
|
|||
#print(registerStatus)
|
||||
return registerStatus
|
||||
|
||||
def launch_maxbot(script_name="chrome_tixcraft", filename="", homepage="", kktix_account = "", kktix_password="", window_size=""):
|
||||
def launch_maxbot(script_name="chrome_tixcraft", filename="", homepage="", kktix_account = "", kktix_password="", window_size="", headless=""):
|
||||
cmd_argument = []
|
||||
if len(filename) > 0:
|
||||
cmd_argument.append('--input=' + filename)
|
||||
|
@ -1925,6 +1925,8 @@ def launch_maxbot(script_name="chrome_tixcraft", filename="", homepage="", kktix
|
|||
cmd_argument.append('--kktix_password=' + kktix_password)
|
||||
if len(window_size) > 0:
|
||||
cmd_argument.append('--window_size=' + window_size)
|
||||
if len(headless) > 0:
|
||||
cmd_argument.append('--headless=' + headless)
|
||||
|
||||
working_dir = os.path.dirname(os.path.realpath(__file__))
|
||||
if hasattr(sys, 'frozen'):
|
||||
|
|
|
@ -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_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": false, "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.25, "reset_browser_interval": 0, "max_dwell_time": 60, "proxy_server_port": "", "window_size": "480,1024,0", "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.25, "reset_browser_interval": 0, "max_dwell_time": 60, "proxy_server_port": "", "window_size": "480,1024,0", "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_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": false, "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.25, "reset_browser_interval": 0, "max_dwell_time": 60, "proxy_server_port": "", "window_size": "480,1024,0", "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.25, "reset_browser_interval": 0, "max_dwell_time": 60, "proxy_server_port": "", "window_size": "480,1024,0", "idle_keyword": "", "resume_keyword": "", "idle_keyword_second": "", "resume_keyword_second": ""}}
|
|
@ -1,6 +1,3 @@
|
|||
$("footer").remove();
|
||||
$("div.banner-wrapper div.img-wrapper img").remove();
|
||||
|
||||
var myInterval = null;
|
||||
//console.log("assign appear");
|
||||
|
||||
|
@ -199,8 +196,11 @@ if(rootElement) {
|
|||
if(!dom_ready()) {
|
||||
myInterval = setInterval(() => {
|
||||
dom_ready();
|
||||
}, 1000);
|
||||
}, 400);
|
||||
}
|
||||
|
||||
$("footer").remove();
|
||||
$("div.banner-wrapper div.img-wrapper img").remove();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@ const storage = chrome.storage.local;
|
|||
var settings = null;
|
||||
var myInterval = null;
|
||||
|
||||
function kktix_clean_exclude(settings, register_info)
|
||||
function kktix_clean_exclude(settings, register_info)
|
||||
{
|
||||
let exclude_keyword_array = [];
|
||||
if(settings) {
|
||||
|
@ -41,7 +41,7 @@ function clean_sold_out_row(register_info, base_info)
|
|||
match_target = true;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
//console.log("match_target:"+match_target);
|
||||
|
@ -97,14 +97,18 @@ function kktix_ajax_return_register_info(register_info)
|
|||
rootElement.remove();
|
||||
register_info=null;
|
||||
settings = null;
|
||||
myInterval = null;
|
||||
myInterval = null;
|
||||
for (var key in window) {
|
||||
key=null;
|
||||
delete key;
|
||||
}
|
||||
if(auto_reload_page_interval == 0) {
|
||||
//console.log('Start to reload now.');
|
||||
location.reload();
|
||||
window.location.reload();
|
||||
} else {
|
||||
//console.log('We are going to reload after few seconeds.');
|
||||
setTimeout(function () {
|
||||
location.reload();
|
||||
window.location.reload();
|
||||
}, auto_reload_page_interval * 1000);
|
||||
}
|
||||
}
|
||||
|
@ -116,7 +120,7 @@ function kktix_ajax_return_register_info(register_info)
|
|||
|
||||
function kktix_event_base_info(register_info)
|
||||
{
|
||||
const currentUrl = window.location.href;
|
||||
const currentUrl = window.location.href;
|
||||
const event_code = currentUrl.split('/')[4];
|
||||
//console.log(currentUrl);
|
||||
//console.log(event_code);
|
||||
|
@ -140,7 +144,7 @@ function kktix_event_base_info(register_info)
|
|||
|
||||
function kktix_event_register_info()
|
||||
{
|
||||
const currentUrl = window.location.href;
|
||||
const currentUrl = window.location.href;
|
||||
const event_code = currentUrl.split('/')[4];
|
||||
//console.log(currentUrl);
|
||||
//console.log(event_code);
|
||||
|
@ -162,7 +166,7 @@ function kktix_event_register_info()
|
|||
}
|
||||
}
|
||||
|
||||
function kktix_force_auto_reload_by_timer()
|
||||
function kktix_force_auto_reload_by_timer()
|
||||
{
|
||||
if(settings) {
|
||||
//console.log("auto reload for kktix");
|
||||
|
@ -173,7 +177,7 @@ function kktix_force_auto_reload_by_timer()
|
|||
}
|
||||
if(max_dwell_time <= 10) {
|
||||
max_dwell_time = 10;
|
||||
}
|
||||
}
|
||||
//console.log('We are going to reload after few seconeds.');
|
||||
setTimeout(function () {
|
||||
location.reload();
|
||||
|
|
Loading…
Reference in New Issue