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

如何使用Python Selenium关闭Chrome中的增强广告隐私弹窗

解决Chrome Selenium中的弹窗问题

以下几种方法可以尝试关闭这类弹窗:

1. 禁用通知权限(针对通知请求类弹窗)

如果弹窗是网站请求发送通知的权限提示,可以通过Chrome偏好设置直接禁用该权限,从根源阻止弹窗出现:

from selenium import webdriver

chrome_options = webdriver.ChromeOptions()
# 2代表拒绝所有通知请求
chrome_options.add_experimental_option("prefs", {
    "profile.default_content_setting_values.notifications": 2
})
driver = webdriver.Chrome(options=chrome_options)

2. 新增广告拦截相关启动参数

之前的参数覆盖范围有限,可以尝试添加更多针对性的启动参数:

chrome_options.add_argument('--disable-features=EnhancedAdBlocking,AdsDataHub,AdPrivacyMetadata')
chrome_options.add_argument('--disable-ad-blocking')
chrome_options.add_argument('--disable-popup-blocking')

3. 手动定位关闭按钮(通用方法)

如果上述参数都无效,可以直接通过Selenium定位弹窗的关闭按钮进行点击,注意要等待弹窗加载完成:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

# 等待弹窗出现(最多等待10秒)
try:
    close_button = WebDriverWait(driver, 10).until(
        EC.element_to_be_clickable((By.XPATH, "//button[contains(@class, 'close') or contains(text(), '关闭')]"))
    )
    close_button.click()
except Exception as e:
    print(f"未检测到弹窗或关闭失败: {e}")

说明:--disable-popup-blocking主要拦截的是浏览器级别的弹出窗口,对于网站自身渲染的广告弹窗、通知请求弹窗并不生效;而EnhancedAdBlocking仅禁用了部分增强广告拦截功能,无法覆盖所有广告/通知弹窗场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 14:49:56