Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium 最佳无头web引擎_Selenium_Phantomjs_Browser Automation_Ghostdriver - Fatal编程技术网

Selenium 最佳无头web引擎

Selenium 最佳无头web引擎,selenium,phantomjs,browser-automation,ghostdriver,Selenium,Phantomjs,Browser Automation,Ghostdriver,我正在进行一个项目,需要将无头web引擎作为服务与之对话,这意味着我需要web引擎作为守护进程运行,并通过一些接口与之对话 我一直在使用PhantomJS+GhostDriver。它可以工作,但执行速度非常慢。由于奇怪的错误,它在很多情况下也失败了。(例如,我无法通过ghostdriver导航到amazon.com,因为出于某种原因,它无法识别pageload何时完成,因此调用永远不会返回) 有没有更强大的解决方案来满足我的需求?这取决于您需要什么功能。如果您需要一个不支持JavaScript(

我正在进行一个项目,需要将无头web引擎作为服务与之对话,这意味着我需要web引擎作为守护进程运行,并通过一些接口与之对话

我一直在使用PhantomJS+GhostDriver。它可以工作,但执行速度非常慢。由于奇怪的错误,它在很多情况下也失败了。(例如,我无法通过ghostdriver导航到amazon.com,因为出于某种原因,它无法识别pageload何时完成,因此调用永远不会返回)


有没有更强大的解决方案来满足我的需求?

这取决于您需要什么功能。如果您需要一个不支持JavaScript(或不太支持JavaScript)且支持Selenium WebDriver的快速浏览器,那么您可以使用HtmlUnit(或许多其他浏览器,但我认为HtmlUnit具有最好的WebDriver支持)

但是,如果需要强大的JavaScript和“正常”浏览器模拟,PhantomJS+GhostDriver是一个不错的选择,因为它使用带有WebKit的JavaScriptCore引擎作为后端


出于我的目的,我需要在GhostDriver可用之前使用Chrome(和chromedriver)。后者虽然并不总是完美的,但在大多数情况下已经取代了Chrome,这仅仅是因为它速度更快(主要是因为它不需要渲染页面),并且其行为与Chrome非常相似(因为WebKit-尤其是JS引擎部分)。

这一切都取决于您需要什么功能。如果您需要一个不支持JavaScript(或不太支持JavaScript)且支持Selenium WebDriver的快速浏览器,那么您可以使用HtmlUnit(或许多其他浏览器,但我认为HtmlUnit具有最好的WebDriver支持)

但是,如果需要强大的JavaScript和“正常”浏览器模拟,PhantomJS+GhostDriver是一个不错的选择,因为它使用带有WebKit的JavaScriptCore引擎作为后端


出于我的目的,我需要在GhostDriver可用之前使用Chrome(和chromedriver)。后者虽然并不总是完美的,但在大多数情况下已经取代了Chrome,这仅仅是因为它速度更快(主要是因为它不需要渲染页面),并且与Chrome的行为非常相似(因为WebKit-尤其是JS引擎部分)。

一个小小的更正:PhantomJS不使用V8;它使用JavaScriptCore引擎,这是WebKit的股票JS引擎。我被一个特性请求弄糊涂了:)-编辑。一个轻微的修正:PhantomJS不使用V8;它使用JavaScriptCore引擎,这是WebKit的股票JS引擎。我被一个功能请求弄糊涂了:)-已编辑。