【发布时间】:2016-07-11 08:07:15
【问题描述】:
如何使用 python 在 Selenium 的 Chrome 驱动程序中禁用 Java 脚本
【问题讨论】:
标签: python selenium selenium-chromedriver
如何使用 python 在 Selenium 的 Chrome 驱动程序中禁用 Java 脚本
【问题讨论】:
标签: python selenium selenium-chromedriver
在Chrome 中禁用JavaScript 可以使用ChromeDriver2 之前的旧ChromeDriver,它仅支持Chrome 28 或更低版本。尝试如下:-
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument("--disable-javascript")
driver = webdriver.Chrome(chrome_options=chrome_options)
警告:不支持在没有
JavaScript的情况下运行,并且可能会破坏大部分ChromeDriver's功能。我 怀疑除了导航到页面之外,您将能够做的更多。 这是不受支持的用例,我们将不支持 它。
希望对你有所帮助...:)
【讨论】:
真的很简单!试试这段代码吧!
从 selenium.webdriver.chrome.options 导入选项
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_experimental_option( "prefs",{'profile.managed_default_content_settings.javascript': 2})
chrome = webdriver.Chrome('chromedriver',chrome_options=chrome_options)
chrome.get('http://stackoverflow.com/')
如果您想禁用图片,只需将 javascript 替换为图片即可。
【讨论】:
如果你使用Nightwatch.js,你必须使用的配置是
var CHROME_CONFIGURATION = {
browserName: 'chrome',
"chromeOptions" : {
"prefs" : {
'profile.managed_default_content_settings.javascript': 2
}
}
};
【讨论】:
真的很难。您可以尝试这样做:
DesiredCapabilities caps = DesiredCapabilities.chrome();
caps.setCapability("chrome.switches", Arrays.asList("--disable-javascript"));
但正如 here 所写,如果您使用 ChromeDriver2,则无法禁用 JavaScript。
【讨论】:
ChromeDriver 2.41.578706 做到这一点:stackoverflow.com/a/57316009/1545579