如何通过Selenium WebDriver在PhantomJS中禁用JavaScript

我想在使用scrapy和selenium进行刮擦时禁用
JavaScript.

这样做的动机是提高刮削速度.我发现了对Firefox驱动程序的偏好,但没有找到PhantomJS.

firefox_profile = webdriver.FirefoxProfile()
firefox_profile.set_preference("javascript.enabled", False)

driver = webdriver.Firefox(firefox_profile=firefox_profile)
driver.get('http://www.quora.com/')

如何为PhantomJS webdriver做到这一点?

最佳答案 PhantomJS中的WebDriver协议是纯JavaScript实现,称为Ghostdriver.它大量使用
page.evaluate()访问DOM,实际上没有其他方法可以访问DOM,与页面交互或使用PhantomJS做任何有意义的事情.你不应该这样做.

如果你仍然想要使用它,这应该工作:

cap = webdriver.DesiredCapabilities.PHANTOMJS
cap["phantomjs.page.settings.javascriptEnabled"] = False
driver = webdriver.PhantomJS(desired_capabilities=cap)
点赞