diff --git a/CHANGELOG.md b/CHANGELOG.md index 9a3aaf5..2457643 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## v3.0.2 (2023/01/08) * Detect Cloudflare blocked access +* Check Chrome / Chromium web browser is installed correctly ## v3.0.1 (2023/01/06) diff --git a/src/flaresolverr_service.py b/src/flaresolverr_service.py index 2acc17c..95b6c78 100644 --- a/src/flaresolverr_service.py +++ b/src/flaresolverr_service.py @@ -1,4 +1,5 @@ import logging +import sys import time from urllib.parse import unquote @@ -42,6 +43,21 @@ SHORT_TIMEOUT = 10 def test_browser_installation(): logging.info("Testing web browser installation...") + + chrome_exe_path = utils.get_chrome_exe_path() + if chrome_exe_path is None: + logging.error("Chrome / Chromium web browser not installed!") + sys.exit(1) + else: + logging.info("Chrome / Chromium path: " + chrome_exe_path) + + chrome_major_version = utils.get_chrome_major_version() + if chrome_major_version == '': + logging.error("Chrome / Chromium version not detected!") + sys.exit(1) + else: + logging.info("Chrome / Chromium major version: " + chrome_major_version) + user_agent = utils.get_user_agent() logging.info("FlareSolverr User-Agent: " + user_agent) logging.info("Test successful") diff --git a/src/utils.py b/src/utils.py index 29e1ede..ceff7ec 100644 --- a/src/utils.py +++ b/src/utils.py @@ -88,6 +88,10 @@ def get_webdriver() -> WebDriver: return driver +def get_chrome_exe_path() -> str: + return uc.find_chrome_executable() + + def get_chrome_major_version() -> str: global CHROME_MAJOR_VERSION if CHROME_MAJOR_VERSION is not None: @@ -112,7 +116,6 @@ def get_chrome_major_version() -> str: process.close() CHROME_MAJOR_VERSION = complete_version.split('.')[0].split(' ')[-1] - logging.info(f"Chrome major version: {CHROME_MAJOR_VERSION}") return CHROME_MAJOR_VERSION