2012-06-27 2 views
34

Я просматриваю документацию для Selenium WebDriver и, например, может управлять Chrome. Я думал, было бы гораздо эффективнее «водить» PhantomJS?Можно ли использовать Selenium WebDriver для управления PhantomJS?

Есть ли способ использовать Selenium с PhantomJS?

Мое предназначение - это очистка веб-сайтов: сайты, которые я царапаю, загружены с помощью AJAX и много прекрасного JavaScript, и я думаю, что эта настройка может стать хорошей заменой для Scrapy Python framework, с которой я сейчас работаю ,

+0

Я заметил, есть внутренний класс 'PhantomJSDriver: RemoteWebDriver, ITakesScreenshot' , но вы не можете создать экземпляр этого (пока) –

ответ

56

PhantomJS теперь включает GhostDriver project.

Вам также предлагается использовать PhantomJS напрямую или с библиотекой удобства, такой как CasperJS. CasperJS специально разработан, чтобы упростить последовательные операции с веб-страницами, идеально подходящие для многих задач автоматизации.

Отказ от ответственности: Я являюсь автором PhantomJS.

Редактировать: Как указано в ответе Ника, GhostDriver теперь включен в PhantomJS.

+0

Ого арий ответил, я читал некоторые ваши вещи на другой день, я действительно восхищаюсь твоя работа. В любом случае, это очень здорово, если вы не возражаете, как лучше всего включить PhantomJS/CasperJS в приложение. Я думал использовать Selenium, потому что хочу, чтобы вся программа циклически и непрерывно работала (ее реальное время и немного интерактивно). Когда я собирался обрабатывать документацию Phantom, у меня создалось впечатление, что это инструмент командной строки для одного использования, и называя его python позволил бы мне превратить его в полноценную программу. Какие-нибудь советы? – Joseph

+5

Вы можете получить некоторые впечатления от многих статей пользователя PhantomJS (проверьте вики). –

+0

wiki пуст. Любые подсказки, где я могу получить помощь в создании этой работы с PHP? – Hippyjim

21

@ Joseph, так как релиз 1.8 GhostDriver включен в стабильный выпуск PhantomJS. Вот точные примечания к выпуску: http://phantomjs.org/release-1.8.html. Вы можете просто начать процесс PhantomJS слушать на каком-либо порту, как это:

phantomjs --webdriver=PORT 

Престижность @detro и команды PhantomJS для удивительной работы!