2012-06-26 20 views
8

我可以在控制台下看到两个远程控制台,但是当我尝试远程连接并执行某个操作时,它以404失败。当我尝试通过Python远程连接到硒网格时,获取404 on/wd/hub/session

from selenium import webdriver 
browser = webdriver.Remote(
    command_executor='http://ec2-184-72-129-183.compute-1.amazonaws.com:4444/wd/hub', 
    desired_capabilities={'browserName': 'firefox'}) 
browser.get('http://www.google.com') 
browser.quit() 

抛出该异常

Traceback (most recent call last): 
    File "browser-shot.py", line 16, in <module> 
    desired_capabilities={'browserName': 'firefox'}) 
    File "/usr/local/lib/python2.6/dist-packages/selenium/webdriver/remote/webdriver.py", line 62, in __init__ 
    self.start_session(desired_capabilities, browser_profile) 
    File "/usr/local/lib/python2.6/dist-packages/selenium/webdriver/remote/webdriver.py", line 104, in start_session 
    'desiredCapabilities': desired_capabilities, 
    File "/usr/local/lib/python2.6/dist-packages/selenium/webdriver/remote/webdriver.py", line 155, in execute 
    self.error_handler.check_response(response) 
    File "/usr/local/lib/python2.6/dist-packages/selenium/webdriver/remote/errorhandler.py", line 125, in check_response 
    raise exception_class(value) 
selenium.common.exceptions.WebDriverException: Message: '<html>\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>\n<title>Error 404 </title>\n</head>\n<body><h2>HTTP ERROR: 404</h2><pre>NOT_FOUND</pre>\n<p>RequestURI=/wd/hub/session</p><p><i><small><a href="http://jetty.mortbay.org/">Powered by Jetty://</a></small></i></p><br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n<br/>            \n\n</body>\n</html>\n' 
+0

我有类似的问题。看来/ wd/hub/session没有被selenium服务,或者Remote正在寻找错误位置的资源。 – munk

+1

它在黑暗中拍摄,因为我不熟悉Python绑定,但这可能是连接相关的,我有几个问题,我可以通过IDE连接到网格,但在哈德逊/詹金斯不可能。 – aimbire

+0

我建议你从示例中删除aws url ......你知道的,以防万一:) –

回答

2

这似乎并非是一个Python错误。看起来你的Selenium服务器上的机器拒绝请求。 在错误消息中,您有一个 <a href="http://jetty.mortbay.org/">Powered by Jetty://</a> 这让我觉得它与Jetty有某种关系。

我对Jetty了解不多,但是您可能想要在那里寻找答案。 一个可能的问题是Jetty也在端口4444上运行,但我不能肯定地说,因为我不知道Jetty是如何工作的。

编辑

我还要补充一点,我想你的设置我的本地机器上,我的一台服务器(即没有码头就可以了),它的工作完美的罚款。

+3

我认为Jetty是硒网格运行的网络服务器。如果Jetty作为单独的进程运行,那么在启动时Jetty或网格是否会发出绑定错误,并说端口正在使用? – munk

+0

等一下,您是否在使用硒的独立服务器? – jyapayne

+0

另外,你可以发布你的硒版本? – jyapayne

1

尝试运行硒枢纽加上Using_

-port 5555 

然后用还配置客户端:

-port 5555 

我认为是使用4444端口或硒另一个软件的问题没有在该端口开始正确。

相关问题