About Reading console.log() Output via Selenium

Selenium is able to read the console.log() output from Chrome browser. Here's how:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service as ChromeService

driver_path = settings.BASE_DIR / "drivers" / "chromedriver"
chrome_options = Options()
chrome_options.set_capability(
    "goog:loggingPrefs",
    {"browser": "ALL", "driver": "ALL", "performance": "ALL"},
)
browser = webdriver.Chrome(
    service=ChromeService(executable_path=driver_path),
    options=chrome_options,
)
# ... browse the website here ...
logs = self.browser.get_log("browser")
for log in logs:
    if log["level"] == "INFO":
         print(log["message"])

Besides the message itself, the message entry will contain some meta information that can be stripped out with your custom regular expression.

Tips and Tricks Programming Testing Selenium