硒无法连接到GhostDriver(但仅在某些情况下)

user_78361084

我在带有Selenium和PhantomJS的Python中设置了一个简单的webscraping脚本。我总共要抓取大约200个URL。脚本最初运行良好,然后运行了大约20-30个URL(它可能会更多/更少,因为它失败时似乎是随机的,并且与任何特定的URL不相关),我在python中收到以下错误:

selenium.common.exceptions.WebDriverException: Message: 'Can not connect to GhostDriver'

还有我的ghostdriver.log:

PhantomJS is launching GhostDriver...
[ERROR - 2014-07-04T17:27:37.519Z] GhostDriver - main.fail - {"message":"Could not start Ghost Driver","line":82,"sourceId":140692115795456,"sourceURL":":/ghostdriver/main.js","stack":"Error: Could not start Ghost Driver\n    at :/ghostdriver/main.js:82","stackArray":[{"sourceURL":":/ghostdriver/main.js","line":82}]}

我进行了搜索,关于SO的大多数问题似乎都是他们甚至无法运行单个URL。我发现脚本中间错误发生的唯一另一个问题是这个问题,答案是将phantomjs升级到最新版本。另一个答案只是说要再次尝试该URL,但由于URL可能再次失败,因此似乎不是一个好的解决方案。

我正在python 2.7.6的Linux Mint 17上运行phantomjs版本1.9.7和硒版本2.42.1

for url in ['example.com/1/', 'example.com/2/', 'example.com/3/', .. , ..]:
    user_agent = 'Chrome'
    dcap = dict(DesiredCapabilities.PHANTOMJS)
    dcap['phantomjs.page.settings.userAgent'] = user_agent
    driver = webdriver.PhantomJS(executable_path='/usr/bin/phantomjs', desired_capabilities=dcap)
    driver.get(url)

我有同样的问题要解决,我从源代码安装了phantomjs

For Linux (Debian):
sudo apt-get update
sudo apt-get install build-essential chrpath git-core libssl-dev libfontconfig1-dev libxft-dev
git clone git://github.com/ariya/phantomjs.git
cd phantomjs
git checkout 1.9
./build.sh

For Mac os:
git clone git://github.com/ariya/phantomjs.git
cd phantomjs
git checkout 1.9
./build.sh

对于其他系统,请检查以下链接http://phantomjs.org/build.html

Optional :
cd bin
chmod +x phantomjs
cp phantomjs /usr/bin/

我想通了,因为当我阅读我的ghostdriver.log文件时,它说。

[ERROR - 2014-09-04T19:33:30.842Z] GhostDriver - main.fail - {"message":"Could not start Ghost Driver","line":82,"sourceId":140145669488128,"sourceURL":":/ghostdriver/main.js","stack":"Error: Could not start Ghost Driver\n    at :/ghostdriver/main.js:82","stackArray":[{"sourceURL":":/ghostdriver/main.js","line":82}]}

我确定必须有一些丢失的文件,某些情况下必须使用该文件。因此,我决定从源头开始构建,并且现在可以正常工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

TreeSet的比较无法删除在某些情况下重复?

默认情况下连接到远程数据库

WakefulBroadcastReceiver意图仅在某些情况下才开始(奇怪)

SQLite3无法写入Amazon AWS上的数据库文件,但仅在某些情况下

SQL查询在某些情况下无法使用某些时间

Spark reduceByKey仅在某些情况下减少

vue.js在某些情况下无法重置属性

仅在某些情况下增加价值

PostgreSQL在冲突中更新仅在某些情况下

在某些情况下,Julia为什么无法识别NaN?

在某些情况下,ToObservable无法触发

在某些情况下无法接受字符串“ Quasar”

JS无法在iOS设备上正常运行-仅在某些情况下

OpenGL gl :: GetUniformLocation仅在某些情况下无法定位统一

仅在某些情况下触发中间件主体

仅在某些情况下,datetime => timestamp的差异?

在某些情况下无法替换Javascript

在没有Cisco AnyConnect的情况下连接到VPN

在没有mssql支持的情况下连接到mssql

仅在第二条记录存在的情况下,两次连接到同一表

在某些情况下,Prettify无法处理少于

仅在某些情况下执行SELECT语句

在连接到插座的情况下引导Windows 10

无法在内核3.18的Ubuntu 14.04上启用ufw的情况下连接到PPTP VPN

bash“模式替换”仅在某些情况下失败

Excel日期错误:Excel无法识别为日期;使用Date =函数会增加2年,但仅在某些情况下

Extjs 5行编辑仅在某些情况下

SonarQube-无法在没有代理的情况下连接到更新中心

仅在某些情况下改变 R 中的数据帧