You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium4调用add_experimental_option报错:WebDriver无此属性求助

问题描述

我遇到了技术问题,急需帮助,无法理解错误原因。我正在尝试通过prefs修改谷歌浏览器的偏好设置,以便指定下载目录,但运行代码时报错。我使用的是Selenium4版本。

我的代码如下:

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import Select, WebDriverWait
from selenium.common.exceptions import NoSuchElementException
import os
from bs4 import BeautifulSoup
from pywinauto import Application, findwindows, WindowSpecification


#Iniciando o chromedriver

pasta_atual = os.getcwd()
service = Service("./chromedriver.exe")
chrome_options = Options()
prefs = {'download.prompt_for_download': 'true'}
driver = webdriver.Chrome(service=service, options=chrome_options)
driver.add_experimental_option("prefs", prefs)

运行代码时出现如下错误:

driver.add_experimental_option("prefs", prefs)
AttributeError: 'WebDriver' object has no attribute 'add_experimental_option'
'WebDriver' object has no attribute 'add_experimental_option'
解决方法

add_experimental_option是ChromeOptions对象的方法,不属于WebDriver对象,你在初始化driver后调用该方法才会触发AttributeError。

正确操作是在初始化WebDriver之前,先给chrome_options添加实验性选项,再将配置好的options传入webdriver.Chrome()。如果要指定下载目录,可在prefs中添加download.default_directory字段:

修改后的核心代码:

pasta_atual = os.getcwd()
service = Service("./chromedriver.exe")
chrome_options = Options()
# 配置下载偏好:关闭下载提示并指定当前目录为下载路径
prefs = {
    'download.prompt_for_download': False,
    'download.default_directory': pasta_atual
}
# 为options添加实验性配置
chrome_options.add_experimental_option("prefs", prefs)
# 用配置完成的options初始化driver
driver = webdriver.Chrome(service=service, options=chrome_options)

调整后即可正确配置Chrome的下载偏好,不会再出现该错误。

内容的提问来源于stack exchange,提问作者henriiquerick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 00:11:18