【问题标题】:Python Selenium Chromedriver Can't disable images to loadPython Selenium Chromedriver 无法禁用图像加载
【发布时间】:2022-01-06 16:42:53
【问题描述】:

我想通过 Selenium 禁用图像在 Chrome 中加载,

当我使用此代码(以及我在网上找到的其他代码)时:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = webdriver.ChromeOptions()
prefs = {"profile.managed_default_content_settings.images": 2}
chrome_options.add_experimental_option("prefs", prefs)
driver = webdriver.Chrome(chrome_options=chrome_options)

我收到以下错误消息:

<ipython-input-36-fb16a130c9b1>:7: DeprecationWarning: use options instead of chrome_options   driver = webdriver.Chrome(chrome_options=chrome_options)


WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home

编辑 1

我最后一次尝试的建议是:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManager

    
driver =webdriver.Chrome(ChromeDriverManager().install(),options=options)
        
options = Options()

chrome_options = webdriver.ChromeOptions()
prefs = {"profile.managed_default_content_settings.images": 2}
chrome_options.add_experimental_option("prefs", prefs)
driver=webdriver.Chrome(options=options)

但是这一行:

driver = webdriver.Chrome(ChromeDriverManager().install(),options=options)

驱动这个错误,同时我的 chromedriver-py 97.0.4692.71:

====== WebDriver manager ======
Current google-chrome version is 97.0.4692
Get LATEST chromedriver version for 97.0.4692 google-chrome
Driver [C:\Users\48791\.wdm\drivers\chromedriver\win32\97.0.4692.71\chromedriver.exe] found in cache

还有这一行:

driver=webdriver.Chrome(options=options)

WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home

【问题讨论】:

  • 不,我想找一些更简单的解决方案,尝试了这个,但我明白了:====== WebDriver manager ====== 当前 google-chrome 版本是 97.0.4692 获取最新在缓存 :12 中找到 97.0.4692 google-chrome 驱动程序 [C:\Users\48791\.wdm\drivers\chromedriver\win32\97.0.4692.71\chromedriver.exe] 的 chromedriver 版本:弃用警告:使用选项而不是 chrome_options driver = webdriver.Chrome(chrome_options=chrome_options)
  • @Prophet 我当前的 ChromeDriver 版本是 97.0.4692.71
  • 正如堆栈所说,您必须使用 chrome 选项并使用正确的标志才能这样做。我认为命令行上没有标志,但我会查找它并编辑此评论。
  • 我确认你不能用通用标志来做,你应该看看this post,它可能会帮助你覆盖chromeoptions。

标签: python selenium selenium-webdriver selenium-chromedriver


【解决方案1】:

我成功了:

option = webdriver.ChromeOptions()
chrome_prefs = {}
option.experimental_options["prefs"] = chrome_prefs
chrome_prefs["profile.default_content_settings"] = {"images": 2}
chrome_prefs["profile.managed_default_content_settings"] = {"images": 2}
PATH = 'C:\Program Files (x86)\chromedriver.exe'
browser = webdriver.Chrome(executable_path = PATH, options=option)
browser.get('https://www.yahoo.com/')
browser.find_element_by_xpath('//*[@class="btn primary"]').click()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-29
    • 2021-06-11
    • 1970-01-01
    • 1970-01-01
    • 2017-02-23
    • 1970-01-01
    • 2018-09-12
    相关资源
    最近更新 更多