加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Splinter Selenium Phantomjs驱动程序在实例化时失败

发布时间:2020-12-20 13:07:29 所属栏目:Python 来源:网络整理
导读:我正在尝试使用 Python Splinter Selenium PhantomJS进行基本测试,但我无法启动phantomjs浏览器. (Chrome和Firefox驱动程序工作正常.)当我运行时: from splinter import Browserb = Browser('phantomjs') 我收到错误: Traceback (most recent call last):
我正在尝试使用 Python Splinter Selenium PhantomJS进行基本测试,但我无法启动phantomjs浏览器. (Chrome和Firefox驱动程序工作正常.)当我运行时:

from splinter import Browser

b = Browser('phantomjs')

我收到错误:

Traceback (most recent call last):
  File "<stdin>",line 1,in <module>
  File "/Library/Python/2.7/site-packages/splinter/browser.py",line 63,in Browser
    return driver(*args,**kwargs)
  File "/Library/Python/2.7/site-packages/splinter/driver/webdriver/phantomjs.py",line 32,in __init__
    self.driver = PhantomJS(desired_capabilities=capabilities,**kwargs)
  File "/Library/Python/2.7/site-packages/selenium/webdriver/phantomjs/webdriver.py",line 56,in __init__
    desired_capabilities=desired_capabilities)
  File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webdriver.py",line 87,in __init__
    self.start_session(desired_capabilities,browser_profile)
  File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webdriver.py",line 141,in start_session
    'desiredCapabilities': desired_capabilities,File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/webdriver.py",line 199,in execute
    response = self.command_executor.execute(driver_command,params)
  File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/remote_connection.py",line 395,in execute
    return self._request(command_info[0],url,body=data)
  File "/Library/Python/2.7/site-packages/selenium/webdriver/remote/remote_connection.py",line 463,in _request
    resp = opener.open(request,timeout=self._timeout)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py",line 431,in open
    response = self._open(req,data)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py",line 449,in _open
    '_open',req)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py",line 409,in _call_chain
    result = func(*args)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py",line 1227,in http_open
    return self.do_open(httplib.HTTPConnection,line 1197,in do_open
    raise URLError(err)
urllib2.URLError: <urlopen error [Errno 8] nodename nor servname provided,or not known>

另外,当我跑:

from selenium import webdriver

d = webdriver.PhantomJS()

我得到了基本相同的错误.

看起来PhantomJS正在使用远程驱动程序连接到远程服务器,但是分裂器没有启动用于PhantomJS连接的selenium(?)服务器.我不介意进入splinter(?)的源代码并更改一些东西以使其工作.但是,我无法确定解决这个问题的方法.

或者,我是否需要手动启动服务器以便PhantomJS连接?

(作为参考,Ruby Cucumber Capybara Poltergeist在我的盒子上工作正常.)
这是我的软件配置.

$python --version
Python 2.7.10

$pip show splinter | grep Version
Metadata-Version: 1.1
Version: 0.7.3

$pip show selenium | grep Version
Metadata-Version: 2.0
Version: 2.47.3

$phantomjs -v
2.0.0

$sw_vers
ProductName:    Mac OS X
ProductVersion: 10.10.5
BuildVersion:   14F27

解决方法

只想在我的机器上使用以下配置很好地分享phantomjs splinter:

~ $python --version
Python 2.7.11

~ $pip show splinter | grep Version
Metadata-Version: 1.1
Version: 0.7.3

~ $pip show selenium | grep Version
Metadata-Version: 2.0
Version: 2.47.3

~ $phantomjs -v
2.0.0

~ $sw_vers
ProductName:    Mac OS X
ProductVersion: 10.11
BuildVersion:   15A284

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读