12

Tôi đang sử dụng python3 trên mac os và tôi đã cập nhật chrome, chromedriverselenium lên phiên bản mới nhất. Tôi đang nhận được một TimeoutException, trình duyệt mở chính xác nhưng nó bị treo.Selenium chromedriver 2,25 TimeoutException không thể xác định trạng thái tải

>>> 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 

Lỗi này được ném:

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) 

Tôi đang sử dụng: Python 3.5.2, Chrome 54.0, chromedriver 2.25, selenium 3.0.1

Tôi đã thử phiên bản khác của chromedriver không thành công, tôi cũng đã làm không tìm thấy giải pháp nào cho trực tuyến này. Cảm ơn.

EDIT:

Tuy nhận được lỗi từ trên cao + nhận được một lỗi mới:

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) 
+0

Tăng dần làm việc cho tôi. điều khiển(). Thời gian chờ() SetPageLoadTimeout (TimeSpan.FromSeconds (60)); – Morvader

Trả lời

9

selenium.common.exceptions.TimeoutException: Message: timeout: cannot determine loading status from timeout: Timed out receiving message from renderer: -0.003

Issue817:It looks like this issue has been logged as a bug for Selenium.

Ai đó đã trả lời để thoát khỏi sự cố này bằng cách sử dụng tùy chọn --dns-prefetch-disable chrome.

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) 

If issue still exists follow this thread may be it solves your problem

+0

Sử dụng '--dns-prefetch-disable' không giải quyết được sự cố cho tôi. Trình điều khiển được tạo với các đối số của nó một cách chính xác nhưng với lệnh tiếp theo [webdriver bị treo khi tải trang và không cung cấp quyền kiểm soát để thực thi tập lệnh.] (Https://bugs.chromium.org/p/chromedriver/issues/detail?id = 402) – RMM

+1

Đối với dòng cuối cùng, bạn có nghĩa là viết 'driver = Chrome (chrome_options = chrome_options)' – rjurney

+0

@rjurney Có, nhờ chỉ nó ra ... –

Các vấn đề liên quan