¿Configurar un tiempo de espera real para cargar la página en Selenium WebDriver?

Estoy probando un sitio con muchos proxies, y el problema es que algunos de esos proxies son muy lentos. Por lo tanto, mi código está atascado al cargar páginas de vez en cuando.

from selenium import webdriver

browser = webdriver.Firefox()
browser.get("http://example.com/example-page.php")
element = browser.find_element_by_id("someElement")

He probado muchas cosas comoexplicit waits oimplicit waits y he estado buscando durante bastante tiempo pero todavía no he encontrado una solución o solución alternativa. Nada parece afectar realmente la línea de carga de la página.browser.get("http://example.com/example-page.php"), y es por eso que siempre está atrapado allí.

¿Alguien tiene una solución para esto?

Actualización 1:

La respuesta de JimEvans resolvió mi problema anterior, yaquí Puedes encontrar un parche de python para esta nueva característica.

Nuevo problema:

browser = webdriver.Firefox()
browser.set_page_load_timeout(30)

browser.get("http://example.com/example-page.php")

element = browser.find_element_by_id("elementA")
element.click() ## assume it's a link to a new page http://example.com/another-example.php

another_element = browser.find_element_by_id("another_element")

Como puedes verbrowser.set_page_load_timeout(30) solo afectabrowser.get("http://example.com/example-page.php") lo que significa que si esta página se carga durante más de 30 segundos arrojará una excepción de tiempo de espera, pero el problema es que no tiene poder sobre la carga de la página, comoelement.click(), aunque no bloquea hasta que la nueva página se carga por completo,another_element = browser.find_element_by_id("another_element") Es el nuevo dolor en el culo, porque tampocoexplicit waits oimplicit waits esperaría a que se cargue toda la página antes de que empiece a buscar ese elemento. En algunos casos extremos esto tomaría inclusoHORAS. ¿Qué puedo hacer al respecto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta