Selen kann keine Verbindung zu GhostDriver (aber nur manchmal)
Ich habe setup eine einfache webscraping-Skript im Python-w/Selen und PhantomJS. Ich habe über 200 URLs in der Summe zu kratzen. Das Skript läuft gut, auf den ersten, dann nach etwa 20-30 URLs (es kann sein, mehr/weniger, wie es scheint zufällig, wenn es fehlschlägt und nicht im Zusammenhang mit einer bestimmten URL) bekomme ich die folgende Fehlermeldung in python:
selenium.common.exceptions.WebDriverException: Message: 'Can not connect to GhostDriver'
Und meine ghostdriver.log:
PhantomJS is launching GhostDriver...
[ERROR - 2014-07-04T17:27:37.519Z] GhostDriver - main.fail - {"message":"Could not start Ghost Driver","line":82,"sourceId":140692115795456,"sourceURL":":/ghostdriver/main.js","stack":"Error: Could not start Ghost Driver\n at :/ghostdriver/main.js:82","stackArray":[{"sourceURL":":/ghostdriver/main.js","line":82}]}
Ich gesucht habe und die meisten Fragen auf, SO zu sein scheinen, dass Sie können nicht einmal einen einzelnen URL. Die nur andere Frage, die ich gefunden habe, wo der Fehler tritt in der Mitte des Skripts ist diese eine und die Antwort zu aktualisieren, phantomjs, um die neueste version, die ich getan habe. Die andere Antwort sagt einfach nur, um zu versuchen, die URL erneut und scheint nicht eine gute Lösung, da die URL konnte einfach nicht wieder.
Ich bin mit phantomjs version 1.9.7 und Selen-version 2.42.1 auf Linux Mint 17 auf python 2.7.6
for url in ['example.com/1/', 'example.com/2/', 'example.com/3/', .. , ..]:
user_agent = 'Chrome'
dcap = dict(DesiredCapabilities.PHANTOMJS)
dcap['phantomjs.page.settings.userAgent'] = user_agent
driver = webdriver.PhantomJS(executable_path='/usr/bin/phantomjs', desired_capabilities=dcap)
driver.get(url)
- was ist
row.url
? - Typo. Behoben.
- wie hast du phantomjs installieren?
- Durch die Binär in phantomjs.org/download.html
- Ich bin auch zu sehen, dieses Problem. Alle updates da, wenn/wie Sie es festgelegt wäre toll.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte das gleiche problem, um es zu beheben ich installiert phantomjs von der Quelle.
Für andere Systeme überprüfen Sie den folgenden link
http://phantomjs.org/build.html
Habe ich es herausgefunden weil wenn ich lese meine ghostdriver.log-Datei, die es sagte.
War ich mir sicher, dass es einige fehlende Dateien, es muss für einige Grenzfälle. Also beschloss ich, bauen aus dem Quelltext und seine arbeiten fein jetzt.