Selen funktioniert nicht auf OpenSUSE 42.1: Der Browser scheint zu verlassen, bevor wir uns anschließen konnten [duplizieren]

Diese Frage hat hier schon eine Antwort:

  • Kann nicht öffnen Browser mit Selenium nach Firefox Update 7 Antworten

Ich versuche, Selen mit Python 3.4 auf einer lokalen Maschine mit Gnome Desktop und Firefox 47 auszuführen. Allerdings ist die grundlegendste Aufgabe bereits fehlgeschlagen, dh das Browser-Fenster zu öffnen. Ich weiß, dass diese Frage auf mehrere SO Post gefragt wurde, aber keine der Antworten ist das Problem zu lösen.

Ich habe einfach installiert Selen mit pip install selenium . Wenn ich laufe

 from selenium import webdriver driver= webdriver.Firefox() 

Ich bekomme folgendes Traceback:

 WebDriverException Traceback (most recent call last) <ipython-input-2-b517b01341f3> in <module>() ----> 1 driver= webdriver.Firefox() /usr/lib/python3.4/site-packages/selenium/webdriver/firefox/webdriver.py in __init__(self, firefox_profile, firefox_binary, timeout, capabilities, proxy, executable_path, firefox_options) 79 80 executor = ExtensionConnection("127.0.0.1", self.profile, ---> 81 self.binary, timeout) 82 RemoteWebDriver.__init__(self, 83 command_executor=executor, /usr/lib/python3.4/site-packages/selenium/webdriver/firefox/extension_connection.py in __init__(self, host, firefox_profile, firefox_binary, timeout) 49 self.profile.add_extension() 50 ---> 51 self.binary.launch_browser(self.profile, timeout=timeout) 52 _URL = "http://%s:%d/hub" % (HOST, PORT) 53 RemoteConnection.__init__( /usr/lib/python3.4/site-packages/selenium/webdriver/firefox/firefox_binary.py in launch_browser(self, profile, timeout) 66 67 self._start_from_profile_path(self.profile.path) ---> 68 self._wait_until_connectable(timeout=timeout) 69 70 def kill(self): /usr/lib/python3.4/site-packages/selenium/webdriver/firefox/firefox_binary.py in _wait_until_connectable(self, timeout) 96 if self.process.poll() is not None: 97 # Browser has exited ---> 98 raise WebDriverException("The browser appears to have exited " 99 "before we could connect. If you specified a log_file in " 100 "the FirefoxBinary constructor, check it for details.") WebDriverException: Message: The browser appears to have exited before we could connect. If you specified a log_file in the FirefoxBinary constructor, check it for details. 

Ich habe schon versucht, pyvirtualdisplay und die $DISPLAY Umgebungsvariable $DISPLAY , aber nichts half.

One Solution collect form web for “Selen funktioniert nicht auf OpenSUSE 42.1: Der Browser scheint zu verlassen, bevor wir uns anschließen konnten [duplizieren]”

Da Firefox-Update auf Version 47 Selen nicht mehr läuft. Eine Arbeit um Marionette . Das wird auch von Mozilla empfohlen.


Eine Alternative, die Sie verwenden können, ist die Verwendung älterer Firefox-Version:

Sie können die Binärdatei hier herunterladen und verwenden Sie es hier:

 from selenium import webdriver from selenium.webdriver.firefox.firefox_binary import FirefoxBinary binary = FirefoxBinary('path/to/binary') driver = webdriver.Firefox(firefox_binary=binary) 
  • Holen Sie sich HTML-Quelle von WebElement in Selenium WebDriver mit Python
  • Selen (mit Python) wie man ein Element css Stil ändern
  • Selen ... Programm funktioniert gut für Firefox, aber nicht Chrome
  • Python, Selen: 'Element ist nicht mehr an die DOM angeschlossen'
  • Chrom-Performance und Tracing-Logs erhalten
  • Java's FluentWait in Python
  • Deaktiviere Bilder in Selen Python
  • Kann keine Datei mit python selenium webdriver auf http://www.dropzonejs.com hochladen
  • Selen - visibility_of_element_located: __init __ () nimmt genau 2 Argumente (3 gegeben)
  • Text aus Textbereich mit Selen löschen
  • Wie kann ich Selen machen, klicken Sie auf die Schaltfläche "Weiter", bis es nicht mehr möglich ist?
  • Python ist die beste Programmiersprache der Welt.