Selenium-Python-Headless Webdriver (PhantomJS) Funktioniert Nicht
So, ich bin mit Mühe Selen arbeiten mit einem Kopflosen Fahrer, speziell PhantomJS. Ich bin versucht, es zu erhalten zu arbeiten auf einem Ubuntu-webserver (Ubuntu 14.04.2 LTS).
Ausführen der folgenden Befehle aus einem python-interpreter (Python 2.7.6) ergibt:
from selenium import webdriver
driver = webdriver.PhantomJS()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/phantomjs/webdriver.py", line 51, in __init__
self.service.start()
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/phantomjs/service.py", line 76, in start
raise WebDriverException("Unable to start phantomjs with ghostdriver: %s" % e)
selenium.common.exceptions.WebDriverException: Message: Unable to start phantomjs with ghostdriver: [Errno 2] No such file or directory
Habe ich auch versucht:
driver = webdriver.PhantomJS(executable_path="/usr/local/lib/python2.7/dist-packages/selenium/webdriver/phantomjs/")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/phantomjs/webdriver.py", line 51, in __init__
self.service.start()
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/phantomjs/service.py", line 76, in start
raise WebDriverException("Unable to start phantomjs with ghostdriver: %s" % e)
selenium.common.exceptions.WebDriverException: Message: Unable to start phantomjs with ghostdriver: [Errno 13] Permission denied
Habe ich auch Hinzugefügt, um den python-Pfad:
import sys
sys.path.append("/usr/local/lib/python2.7/dist-packages/selenium/webdriver/phantomjs/")
Aktuell bin ich als root angemeldet sind. Berechtigungen für die phantomjs-Verzeichnis:
drwxr-sr-x 2 root staff 4096 Sep 9 06:58 phantomjs
und für phantomjs/webdriver.py:
-rw-r--r-- 1 root root 2985 Sep 9 06:58 webdriver.py
Habe ich bestätigt Selen ist installiert und up-to-date (pip install selenium --upgrade). Es ist installiert unter:
/usr/local/lib/python2.7/dist-packages/selenium/webdriver/phantomjs/
print selenium.__version__
2.47.1
Habe ich mir angeschaut:
-
https://superuser.com/questions/674322/python-selenium-phantomjs-unable-to-start-phantomjs-with-ghostdriver - Windows-spezifisch, aber kein Glück nach ähnlichen Vorschlägen.
-
Verwendung von Selen in den hintergrund - Antwort suggeriert PhatomJS mit vollständigen Pfad.
-
https://code.google.com/p/selenium/issues/detail?id=6736 - Ich deinstalliert Selen und installiert v2.37, mit kein Glück. Neu installiert die neueste version und immer noch kein Glück.
-
Plus einige weitere links, die meisten scheinen zu empfehlen, die Angabe der executable_path.
Ich habe getestet mein Programm auf einem lokal gehosteten server (auf OSX), mit chromedriver. Ich bin tatsächlich mit Splitter ( https://splinter.readthedocs.org/en/latest/#headless-drivers ), und haben versucht, die anderen headless-Treiber (django und zope.testbrowser), aber habe ähnliche Probleme.
Ich bin offen für alle Vorschläge, ich bin nicht dagegen, wechselnde Fahrer, falls erforderlich.
Vielen Dank im Voraus für jede Hilfe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte das gleiche problem wie du mit dem gleichen Fehler. Ich habe versucht, es zu installieren, auf dem openSuse-Server. Ich landete der Installation PhantomJS form Quelle -leider ohne Erfolg. Die Art und Weise, die für mich gearbeitet wurde die Installation von Phantomjs über npm
So phantomjs installieren über den package manager schien es zu beheben...
Eh hoffentlich der Prozess hilft anderen Menschen, die haben das gleiche Problem.
selenium.common.exceptions.WebDriverException: Message: Can not connect to GhostDriver on port XXXX
auf Welche verwiesen wurde, den FehlerKilled: 9
beim laufenphantomjs
vom terminal. Diese links fixiert es für mich: stackoverflow.com/questions/28267809/... github.com/eugene1g/phantomjs/releases