10

我成功地使用 Conductor 框架从网站上抓取数据。我使用 Chrome 浏览器,因此我在项目的根目录中安装了 chromedriver.exe。

为了加快速度,我想用无头 PhantomJS 浏览器替换 Chrome。我按照 Stackoverflow 问题的答案中的说明安装了 PhantomJS:PhantomJS & Conductor Framework,并将浏览器更改为 @Config 中的 Browser.PHANTOMJS。

然而,无论我做什么,我都没有得到任何结果。

我没有找到如何设置 PhantomJS 以与 Selenium 或 PhantomJS 一起使用的文档。

问题如何使用 PhantomJS 实现 Selenium WebDriver 以及我们可以将 Sikuli 与 PhantomJS 一起使用吗?也没有帮助。

如何用 PhantomJS 替换 Chrome 以与 Selenium 和 Conductor 一起使用?

4

2 回答 2

8

您遇到的问题似乎是由于 Conductor 中包含的 PhantomJS 库的旧版本所致。运行 PhantomJS 时的错误可以在Selenium Github 上的这个导入问题中找到。补救措施是导入一个适用于 Selenium 较新版本的 PhantomJS的分支。

pom.xml您可以通过编辑文件和交换轻松实现这一点

<groupId>com.github.detro</groupId>
<artifactId>phantomjsdriver</artifactId>
<version>${phantomjs_version}</version>

<groupId>com.codeborne</groupId>
<artifactId>phantomjsdriver</artifactId>
<version>1.2.1</version>
于 2017-01-18T20:34:50.830 回答
0

您可以使用带有 selenium 的无头 chrome 驱动程序,如下所示:

https://duo.com/decipher/driving-headless-chrome-with-python

于 2018-03-27T12:55:44.010 回答