Ich verwende python3
auf Mac OS und habe Chrome, chromedriver
und Selenium
auf die neueste Version aktualisiert. Ich erhalte eine TimeoutException
, der Browser wird korrekt geöffnet, aber es friert ein.
>>> from Selenium import webdriver
>>> driver = webdriver.Chrome()
# opens browser with blank page
>>> driver.get('http://example.com')
# gets first page OK and then driver literally flashes once
>>> driver.get('http://stackoverflow.com')
>>>
# Cursor loading forever... until TimeoutException
Dieser Fehler wird ausgelöst:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.5/site-packages/Selenium/webdriver/remote/webdriver.py", line 248, in get
self.execute(Command.GET, {'url': url})
File "/usr/local/lib/python3.5/site-packages/Selenium/webdriver/remote/webdriver.py", line 236, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.5/site-packages/Selenium/webdriver/remote/errorhandler.py", line 192, in check_response
raise exception_class(message, screen, stacktrace)
Selenium.common.exceptions.TimeoutException: Message: timeout: cannot determine loading status
from timeout: Timed out receiving message from renderer: -0.003
(Session info: chrome=54.0.2840.71)
(Driver info: chromedriver=2.25.426935 (820a95b0b81d33e42712f9198c215f703412e1a1),platform=Mac OS X 10.12.0 x86_64)
Ich verwende: Python 3.5.2
, Chrome 54.0
, chromedriver 2.25
, Selenium 3.0.1
Ich habe andere Versionen von chromedriver
ohne Erfolg ausprobiert und auch online keine Lösung gefunden. Vielen Dank.
BEARBEITEN:
Immer noch den Fehler von oben erhalten + Neuer Fehler:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.5/site-packages/Selenium/webdriver/chrome/webdriver.py", line 69, in __init__
desired_capabilities=desired_capabilities)
File "/usr/local/lib/python3.5/site-packages/Selenium/webdriver/remote/webdriver.py", line 92, in __init__
self.start_session(desired_capabilities, browser_profile)
File "/usr/local/lib/python3.5/site-packages/Selenium/webdriver/remote/webdriver.py", line 179, in start_session
response = self.execute(Command.NEW_SESSION, capabilities)
File "/usr/local/lib/python3.5/site-packages/Selenium/webdriver/remote/webdriver.py", line 236, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.5/site-packages/Selenium/webdriver/remote/errorhandler.py", line 192, in check_response
raise exception_class(message, screen, stacktrace)
Selenium.common.exceptions.WebDriverException: Message: session not created exception
from unknown error: bad inspector message: {"method":"Page.loadEventFired","params":{"timestamp":14220,088073}}
(Session info: chrome=54.0.2840.71)
(Driver info: chromedriver=2.25.426935 (820a95b0b81d33e42712f9198c215f703412e1a1),platform=Mac OS X 10.12.0 x86_64)
Selenium.common.exceptions.TimeoutException: Nachricht: Timeout: Ladestatus kann nicht ermittelt werden from timeout: Zeitüberschreitung beim Empfang einer Nachricht vom Renderer: -0.003
Issue817: Anscheinend wurde dieses Problem als Fehler für Selenium protokolliert.
Jemand hat auf dieses Problem mit der --dns-prefetch-disable
-Option von Chrome geantwortet.
from Selenium.webdriver import Chrome
from Selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument('--dns-prefetch-disable')
driver = Chrome(chrome_options=chrome_options)
Wenn das Problem weiterhin besteht, folgen Sie diesem Thread. Möglicherweise löst es Ihr Problem.
Einstellen
env LANG = de_US.UTF-8 ./chromedriver
von: https://bugs.chromium.org/p/chromedriver/issues/detail?id=1552