import os, sys from selenium import webdriver from selenium.webdriver.chrome.options import Options as ChromeOptions projectDirectory = os.path.dirname(os.path.realpath(__file__)) # Webdriver _driver = 0 _defaultWait = 20 def Init(): global _driver # Initialize driver with options ops = ChromeOptions() ops.add_argument("start-maximized") ops.add_experimental_option('excludeSwitches', ["enable-automation"]) ops.add_experimental_option('excludeSwitches', ['enable-logging']) ops.add_experimental_option( 'prefs', { 'credentials_enable_service': False, 'profile': { 'password_manager_enabled': False, } } ) try: _driver = webdriver.Chrome(options=ops, executable_path=f"{projectDirectory}/chromedriver.exe") _driver.set_page_load_timeout(_defaultWait) return True except Exception as e: print(str(e)) _driver.quit() def Quit(el=None): if el is None: el = 0 global _driver try: if type(_driver) != int: _driver.quit() except Exception as e: print(f"Error: Driver quit failed \n {str(e)}") el = 1 sys.exit(el)