"session not created" error with Selenium ChromeDriver started by Django

Whenever I try to start up Selenium ChromeDriver via Django on an Ubuntu server, I get a "session not created" error. The issue appears to be based on starting it with the Django process, as running it directly through the Django shell works fine.

It used to work with Chrome 108.0.5359.124, but it stopped working when I updated to 149.0.7827.155. I'm using Selenium 4.46.0.

I've included the Selenium log below which suggests checking the ChromeDriver verbose log. I tried to get ChromeDriver to write logs directly to chrome.log, but it's always blank. Just figuring out how to get the proper logs could help a lot.

This is the setup code, it crashes once it reaches the last line:

import logging
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.core.driver_cache import DriverCacheManager

logger = logging.getLogger("selenium")
handler = logging.FileHandler("/home/user/chrome_selenium.log")
logger.addHandler(handler)
logger.setLevel(logging.DEBUG)

options = Options()
options.add_argument("--headless")
options.add_argument("--disable-gpu")
options.add_argument("--enable-logging")
options.add_argument("--verbose")
options.add_argument("--v=1")
options.add_argument("--log-path=/home/user/chrome.log")
cache_manager = DriverCacheManager(root_dir="/home/user")
service = Service(executable_path=ChromeDriverManager(cache_manager=cache_manager).install(), log_path="/home/user/chrome_service.log")
driver = webdriver.Chrome(service=service, options=options)

This is the contents of chrome_selenium.log:

Skipping Selenium Manager; path to chrome driver specified in Service class: /home/user/.wdm/drivers/chromedriver/linux64/149.0.7827.155/chromedriver-linux64/chromedriver
Started executable: `/home/user/.wdm/drivers/chromedriver/linux64/149.0.7827.155/chromedriver-linux64/chromedriver` in a child process with pid: 231617 using 0 to output -3
POST http://localhost:60061/session {'capabilities': {'firstMatch': [{}], 'alwaysMatch': {'browserName': 'chrome', 'pageLoadStrategy': <PageLoadStrategy.normal: 'normal'>, 'goog:chromeOptions': {'extensions': [], 'args': ['--headless', '--disable-gpu', '--enable-logging', '--verbose', '--v=1', '--log-path=/home/user/chrome.log']}}}}
Remote response: status=500 | data={"value":{"error":"session not created","message":"session not created: Chrome instance exited. Examine ChromeDriver verbose log to determine the cause.","stacktrace":"#0 0x55db793e83da \u003Cunknown>\n#1 0x55db78dca139 \u003Cunknown>\n#2 0x55db78e0822c \u003Cunknown>\n#3 0x55db78e03419 \u003Cunknown>\n#4 0x55db78e52d96 \u003Cunknown>\n#5 0x55db78e5247c \u003Cunknown>\n#6 0x55db78e11e4f \u003Cunknown>\n#7 0x55db78e12c31 \u003Cunknown>\n#8 0x55db793ae9f7 \u003Cunknown>\n#9 0x55db793ad203 \u003Cunknown>\n#10 0x55db79397f16 \u003Cunknown>\n#11 0x55db793add9a \u003Cunknown>\n#12 0x55db7937feb0 \u003Cunknown>\n#13 0x55db793d4d58 \u003Cunknown>\n#14 0x55db793d4ef5 \u003Cunknown>\n#15 0x55db793e6f5e \u003Cunknown>\n#16 0x7f77ab9fd609 start_thread\n"}} | headers=HTTPHeaderDict({'Content-Length': '754', 'Content-Type': 'application/json; charset=utf-8', 'cache-control': 'no-cache'})
Finished Request
Вернуться на верх