Chromedriver 硒 python

2024-03-06

我正在使用 selenium 开发一个 python 项目。

我收到以下错误,需要一些帮助

selenium.common.exceptions.WebDriverException:消息:未知错误:无法确定加载状态 来自未知错误:意外的命令响应 (会话信息:chrome=103.0.5060.114)

我的 chrome 版本是 103,我的 chrome 驱动程序也是。

这是代码

from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.chrome.service import Service

player = input("Which player: ").lower()
PATH = "/Users/makfadel/Desktop/Desktop-items/chromedriver 2"
#driver = webdriver.Chrome(PATH)

s = Service(PATH)
browser = webdriver.Chrome(service=s)
browser.get("https://www.basketball-reference.com/leagues/NBA_2022_per_game.html")
search = browser.find_element(By.XPATH, "//*[@id='header']/div[3]/form/div/div/input[2]")
search.send_keys(player)
search.send_keys(Keys.RETURN)

try:
    element = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='players']/div[1]/div[1]/strong/a")))
    element.click()
    name = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='meta']/div[2]/h1/span")))
    print()
    print(name.text)
    print()
    szn = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='info']/div[4]/div[1]/div/p[1]/strong"))
    )
    games = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='info']/div[4]/div[2]/div[1]/p[1]"))
    )
    ppgame = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='info']/div[4]/div[2]/div[2]/p[1]"))
    )
    rebounds = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='info']/div[4]/div[2]/div[3]/p[1]"))
    )
    assists = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='info']/div[4]/div[2]/div[4]/p[1]"))
    )
    fg = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='info']/div[4]/div[3]/div[1]/p[1]"))
    )
    fg3 = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='info']/div[4]/div[3]/div[2]/p[1]"))
    )
    ft = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.XPATH, "//*[@id='info']/div[4]/div[3]/div[3]/p[1]"))
    )
    print(f"Season: {szn}")
    print(f"Games played: {games.text}")
    print(f"Points per game: {ppgame.text}")
    print(f"Rebounds per game: {rebounds.text}")
    print(f"Assists per game: {assists.text}")
    print(f"Field goal percentage: {fg.text}%")
    print(f"Field goal from 3 percentage: {fg3.text}%")
    print(f"Free throw percentage: {ft.text}%")
except Exception:
    print(f"No player named {player}")
finally:
    browser.quit()

出现了一个问题Chrome 驱动程序 103 版本

请在下面找到相同的错误 ID,

在 GitHub Selenium Issue 上查看 -https://github.com/SeleniumHQ/selenium/issues/10799 https://github.com/SeleniumHQ/selenium/issues/10799

Solution

  1. 目前,在这个问题得到解决之前,请尝试“将 Chrome 浏览器降级至 v102” and “下载 Selenium Chrome 驱动程序 102”并尝试运行您的脚本,因为此问题发生在103版本。

  2. 将 chromedriver 升级到 v104

示例代码片段 -

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager


// 1
option = Options()
option.binary_location='/Applications/Google Chrome Beta.app/Contents/MacOS/Google Chrome Beta'

// 2
driver = webdriver.Chrome(service=Service(ChromeDriverManager(version='104.0.5112.20').install()), options=option)

代码参考-https://www.globalnerdy.com/2022/06/30/fix-the-chromedriver-103-bug-with-chromedriver-104/ https://www.globalnerdy.com/2022/06/30/fix-the-chromedriver-103-bug-with-chromedriver-104/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Chromedriver 硒 python 的相关文章

随机推荐