diff --git a/src/utils.py b/src/utils.py index 79cf6f6..73c21f3 100644 --- a/src/utils.py +++ b/src/utils.py @@ -113,7 +113,7 @@ def create_proxy_extension(proxy: dict) -> str: def get_webdriver(proxy: dict = None) -> WebDriver: - global PATCHED_DRIVER_PATH + global PATCHED_DRIVER_PATH, USER_AGENT logging.debug('Launching web browser...') # undetected_chromedriver @@ -136,6 +136,10 @@ def get_webdriver(proxy: dict = None) -> WebDriver: # https://peter.sh/experiments/chromium-command-line-switches/#use-gl options.add_argument('--use-gl=swiftshader') + # Fix for Chrome 117 | https://github.com/FlareSolverr/FlareSolverr/issues/910 + if USER_AGENT is not None: + options.add_argument('--user-agent=%s' % USER_AGENT) + proxy_extension_dir = None if proxy and all(key in proxy for key in ['url', 'username', 'password']): proxy_extension_dir = create_proxy_extension(proxy) @@ -295,6 +299,8 @@ def get_user_agent(driver=None) -> str: if driver is None: driver = get_webdriver() USER_AGENT = driver.execute_script("return navigator.userAgent") + # Fix for Chrome 117 | https://github.com/FlareSolverr/FlareSolverr/issues/910 + USER_AGENT = re.sub('HEADLESS', '', USER_AGENT, flags=re.IGNORECASE) return USER_AGENT except Exception as e: raise Exception("Error getting browser User-Agent. " + str(e))