gpt4 book ai didi

python - Chromedriver Selenium python

转载 作者:行者123 更新时间:2023-12-05 03:21:32 25 4
gpt4 key购买 nike

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

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

selenium.common.exceptions.WebDriverException: Message: unknown error: cannot determine loading statusfrom unknown error: unexpected command response(Session info: 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,

https://bugs.chromium.org/p/chromedriver/issues/detail?id=4121&q=label%3AMerge-Request-103

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

解决方案

  1. 目前,在解决此问题之前尝试“将 Chrome 浏览器降级到 v102”“下载 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/

关于python - Chromedriver Selenium python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72942868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com