Ich benutze Selen mit geckodriver versuchen, eine HTML-Seite zu bekommen. Unten ist der Code, den ich verwendeWebDriverException: Nachricht: Verbindung verweigert
from pyvirtualdisplay import Display
from selenium import webdriver
#start the virtual display
display = Display(visible=0, size=(800, 600))
display.start()
# start the browser. Using firefox.
browser = webdriver.Firefox()
browser.get('https://www.google.com')
print browser.title
browser.quit()
display.stop()
Wenn ich es mit Python ausführen, erhalte ich die folgende Fehlermeldung.
Traceback (most recent call last):
File "test.py", line 9, in <module>
browser = webdriver.Firefox()
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/firefox/webdriver.py", line 152, in __init__
keep_alive=True)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 98, in __init__
self.start_session(desired_capabilities, browser_profile)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 188, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 256, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 194, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: connection refused
Ich konsultiert geckodriver.log
.
1500842848329 geckodriver INFO geckodriver 0.18.0
1500842848362 geckodriver INFO Listening on 127.0.0.1:45467
1500842849526 geckodriver::marionette INFO Starting browser /usr/bin/firefox with args ["-marionette"]
Ich bin unsicher, wo ich als nächstes suchen soll. Irgendwelche Hinweise?
Update1: Es scheint, dass, als ich ein Power-Reset auf dem VPS, das Skript zu arbeiten begann. Ich untersuchte es weiter und erinnerte mich daran, dass es vier nicht mehr existierende Prozesse gab, die von früheren Firefox-Hinrichtungen ausgingen, die ich töten musste. Ich weiß nicht genug über die Interna der Prozessverarbeitung in Linux, um dies vollständig zu verstehen. Wird Geckodriver verwirrt?
Gilt das auch auftreten, ohne eine virtuelle Anzeige? – n1c9
Danke für den Hinweis. Ich habe gerade versucht, den Code der virtuellen Anzeige zu kommentieren, aber derselbe Fehler taucht auf. – tehnyit