我正尝试使用python中的selenium来使用javascript来刮取一些动态页面。但是,在我遵循pypi页面上的硒指令(http://pypi.python.org/pypi/selenium)之后,我无法调用firefox。我在AWS ubuntu 12.04上安装了firefox。我得到的错误信息是:无法从AWS上的python中调用selenium的firefox
In [1]: from selenium import webdriver
In [2]: br = webdriver.Firefox()
---------------------------------------------------------------------------
WebDriverException Traceback (most recent call last)
/home/ubuntu/<ipython-input-2-d6a5d754ea44> in <module>()
----> 1 br = webdriver.Firefox()
/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/webdriver.pyc in __init__(self, firefox_profile, firefox_binary, timeout)
49 RemoteWebDriver.__init__(self,
50 command_executor=ExtensionConnection("127.0.0.1", self.profile,
---> 51 self.binary, timeout),
52 desired_capabilities=DesiredCapabilities.FIREFOX)
53
/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/extension_connection.pyc in __init__(self, host, firefox_profile, firefox_binary, timeout)
45 self.profile.add_extension()
46
---> 47 self.binary.launch_browser(self.profile)
48 _URL = "http://%s:%d/hub" % (HOST, PORT)
49 RemoteConnection.__init__(
/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/firefox_binary.pyc in launch_browser(self, profile)
42
43 self._start_from_profile_path(self.profile.path)
---> 44 self._wait_until_connectable()
45
46 def kill(self):
/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/firefox_binary.pyc in _wait_until_connectable(self)
79 raise WebDriverException("The browser appears to have exited "
80 "before we could connect. The output was: %s" %
---> 81 self._get_firefox_output())
82 if count == 30:
83 self.kill()
WebDriverException: Message: 'The browser appears to have exited before we could connect. The output was: Error: no display specified\n'
我没有在网络上搜索,发现这个问题发生的与其他人(https://groups.google.com/forum/?fromgroups=#!topic/selenium -users/21sJrOJULZY)。但如果是这样,我不明白解决方案。
谁能帮助我吗?谢谢!
'错误:未指定显示“表示浏览器没有显示其主窗口的屏幕。您需要找到一种运行Firefox无头的方法:http://stackoverflow.com/questions/10060417/python-firefox-headless。这个答案特别看起来很有用:http://stackoverflow.com/a/6300672/464744 – Blender
@Blender非常感谢你。第二个链接解决了我的问题。有时候,如果我没有正确的关键字,我就无法从google找到解决方案。 – David
@Blender:你是如何在网页中获得锚点以便在页面中响应的?我在页面中看不到像这样的链接。 –