SessionNotCreatedException:消息:未创建会话:此版本的 ChromeDriver 仅支持使用 Selenium 的 Chrome 版本 96 和 Python

SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 96 using Selenium and Python

我已经尝试打开我的默认 chrome 浏览器 1 个多月了。我现在还没有成功。我发表了另外 2 篇没有太大帮助的帖子。因此,我只是最后一次尝试并希望最好。

我正在尝试的是我想用 selenium 打开我的 chrome 主浏览器。 我想这样做的原因是为了使用某些 cookie 从我的主浏览器登录。 我唯一能看到自己得到它的方法是打开我每天使用的 chrome 浏览器。

一段时间以来一直在编写一些代码,但仍然希望能够在我的主浏览器中使用它。

我的代码如下所示:

import time
from selenium import webdriver
import getpass
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import Select


options = webdriver.ChromeOptions()
options.add_argument("user-data-dir=C:\Users\rober\AppData\Local\Google\Chrome\User Data\Default")
driver = webdriver.Chrome(executable_path=r'C:\Users\rober\Desktop\Bot\chromedriver.exe', chrome_options=options)
driver.get("https://www.zalando.dk/jordan-air-jordan-1-mid-sneakers-high-joc12n001-a18.html")

buyButton = False

while buyButton is False:

    try:
        
        addToCartBtn = addButton = driver.find_element_by_xpath('/html/body/div[4]/div/div[2]/div/div/div[2]/div[1]/x-wrapper-re-1-6/div/div[4]/button')

        print("Varen er udsolgt")

        time.sleep(1)
        driver.refresh()

    except:
        addToCartBtn = addButton = driver.find_element_by_xpath('//*[@id="picker-trigger"]')

        print("Varen er på Lager")
        buyButton = True

while buyButton is True:
    time.sleep(1)
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button.uc-btn#uc-btn-accept-banner"))).click()
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//span[text()='Vælg størrelse']"))).click()
    driver.execute_script("return arguments[0].scrollIntoView(true);", WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//label[starts-with(@for, 'size-picker')]//span[text()='51.5']"))))
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//label[starts-with(@for, 'size-picker')]//span[text()='51.5']"))).click()
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//span[text()='Læg i indkøbskurv']"))).click()
    WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'a[title="Indkøbskurv"]'))).click()
    WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.CSS_SELECTOR, ".z-coast-base__totals-tile .z-1-button__content"))).click()
    WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'a[title="Registrér dig"]'))).click()

我的错误是这样的:

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 96
Current browser version is 99.0.4844.82 with binary path C:\Program Files\Google\Chrome\Application\chrome.exe

这个错误信息...

selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 96
Current browser version is 99.0.4844.82 with binary path C:\Program Files\Google\Chrome\Application\chrome.exe

...表示 was unable to initiate/spawn a new Browsing Context i.e. 会话。

您的主要问题是您使用的二进制文件版本之间不兼容,如下所示:

  • 您正在使用 chrome=99.0
  • 但是你使用的是chromedriver=96.0
  • chromedriver=96.0 的发行说明清楚地提到了以下内容:

Supports Chrome version 96

所以 chromedriver=96.0chrome=99.0


解决方案

确保: