Вопрос: Как отключить JavaScript в PhantomJS через Selenium WebDriver


Я хочу отключить JavaScript во время очистки с помощью scrapy и selenium. Мото делает это, чтобы увеличить скорость скремблирования. Я нашел предпочтение для драйвера 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?


3


источник


Ответы:


Протокол WebDriver в PhantomJS - это чистая реализация JavaScript, известная как Ghostdriver. Он широко использует page.evaluate() для доступа к DOM, и нет никакого другого способа доступа к DOM, взаимодействия со страницей или чего-либо значимого с PhantomJS. Вы не должны этого делать.

Если вы все еще хотите пройти через это, это должно работать:

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

7



Если сайт не требует JavaScript, просто используйте только терапию. Селена нет необходимости. Scrapy чрезвычайно быстро для страниц без JavaScript.


0