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

如何在Selenium Chrome中禁用Cookies?解决chromedriver路径报错问题

解决Selenium Chrome的两个问题:路径报错+禁用Cookies

我来帮你搞定这两个问题,先拆解你代码里的问题,再给你修正后的完整方案:

一、解决chromedriver路径报错

你代码里犯了一个小失误:重复实例化了WebDriver对象。第一次你传了chromedriver的路径,但没加禁用Cookie的配置;第二次加了配置,却没传路径,导致程序找不到chromedriver。

正确的做法是把ChromeOptions配置和chromedriver路径一次性传给WebDriver的构造函数,不要分开实例化。

二、正确禁用Chrome的Cookies

你之前用的配置项"profile.default_content_settings.cookies": 2已经过时了,当前有效的配置键是"profile.default_content_setting_values.cookies": 2,把这个放在prefs里就能禁用所有Cookie。

如果需要更彻底的禁用(比如阻止第三方Cookie),还可以额外添加配置,但基础禁用用上面的配置就足够。

修正后的完整代码

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

# 1. 配置ChromeOptions,禁用Cookies
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option(
    "prefs", 
    {"profile.default_content_setting_values.cookies": 2}  # 正确的禁用Cookie配置
)

# 2. 传入chromedriver路径和配置,实例化driver
PATH = r"C:\Users\amete\Documents\chromedriver.exe"
driver = webdriver.Chrome(executable_path=PATH, chrome_options=chrome_options)

# 后续操作(顺便修正了Google搜索框的id,原"input"已失效)
driver.get("https://www.google.com/")
print(driver.title)
search = driver.find_element_by_id("APjFqb")
search.send_keys("One Piece")
search.send_keys(Keys.RETURN)
time.sleep(5)
driver.quit()

额外适配说明

  • 如果你用的是Selenium 4.x版本,chrome_options参数已更名为options,实例化代码要改成:
    driver = webdriver.Chrome(executable_path=PATH, options=chrome_options)
    
  • 另外,find_element_by_id这类写法在Selenium 4.x中已标记为过时,推荐使用:
    from selenium.webdriver.common.by import By
    search = driver.find_element(By.ID, "APjFqb")
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 19:57:36