将adblocker扩展程序与使用python硒的无头chrome驱动程序结合使用

时间:2019-04-19 19:54:07

标签: python selenium google-chrome-extension selenium-chromedriver google-chrome-headless

我正在尝试使用adblocker 无头运行chrome驱动程序,分别执行这两个操作不会给我带来任何错误,但是同时添加这两个选项则会给我带来以下错误:

  

selenium.common.exceptions.WebDriverException:消息:未知错误:无法等待扩展程序后台页面加载:chrome-extension://alplpnakfeabeiebipdmaenpmbgknjce/_genic_background_page.html   出现未知错误:无法找到页面:chrome-extension://alplpnakfeabeiebipdmaenpmbgknjce/_genic_background_page.html

据我所知,adblock扩展程序正在寻找背景页面,却没有像无头模式那样找到它。 (没有无头模式也可以正常工作)

可测试的代码(给出错误):

from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
# adblocker crx file, downloaded from: https://chrome-extension-downloader.com/
chrome_options.add_extension("Adblocker-for-Chrome-NoAds_v3.2.0.1.crx")
chrome_options.add_argument("headless")

driver = webdriver.Chrome(options=chrome_options)

我尝试过的事情:

·不同的adblocker。 (可以提供列表)

·使代码在各个地方等待。 (因为错误表明它无法等待  东西)

·无头却没有广告拦截器。 (比使用adblocker和显示窗口的GUI的速度慢)

·向Google多次提问。 (没用...)

如果有人知道具有adblock扩展名的同时使用python硒无头运行chrome浏览器的解决方案,我也想知道,谢谢。

1 个答案:

答案 0 :(得分:0)

目前无法在带有扩展名的无头模式下运行硒,而且看来Google不会在不久的将来提供支持。 您可以找到更多信息here