2012-06-27 47 views
34

我正在浏览Selenium WebDriver的文档,它可以驱动Chrome。我在想,“驾驶”PhantomJS不是更高效吗?是否可以使用Selenium WebDriver来驱动PhantomJS?

有没有办法将PhantomJS与Selenium一起使用?

我的预期用途是网络抓取:我所搜索的站点装载了AJAX和许多可爱的JavaScript,我在想这个设置可能是我正在使用的Scrapy Python框架的一个很好的替代品。 。

+0

我注意到有一个内部类 'PhantomJSDriver:RemoteWebDriver,ITakesScreenshot' 但你不能创建它的一个实例(还) –

回答

56

PhantomJS现在包括GhostDriver project

也建议您直接使用PhantomJS或使用便利库,例如CasperJS。 CasperJS专门设计用于简化对网页的连续操作,适用于许多自动化任务。

声明:我是PhantomJS的作者。

编辑:正如尼克的回答所指出的,GhostDriver现在包含在PhantomJS中。

+0

哇哦Ariya回应,我在读自己的东西有一天,我真的很佩服你的工作。无论如何,如果你不介意,最好的方式是将PhantomJS/CasperJS整合到应用程序中。我正在考虑使用Selenium,因为我希望整个程序能够不断循环和运行(它的实时性和轻微的交互性)。当我使用Phantom文档时,我得到的印象是它是一种用于一次性使用的命令行工具,并从python会让我把它变成一个完整的程序。有小费吗? – Joseph

+5

您可以从很多PhantomJS用户文章中获取一些灵感(查看wiki)。 –

+0

维基是空的。任何线索,我可以得到帮助,使这项工作与PHP? – Hippyjim

21

@Joseph,自1.8版本发布GhostDriver被包含在PhantomJS的稳定版本中。以下是确切的发行说明:http://phantomjs.org/release-1.8.html。 您只需启动PhantomJS过程中,听取了一些端口上,这样的:

phantomjs --webdriver=PORT 

荣誉给@detro和PhantomJS团队真棒工作!

相关问题