es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

R – Selenium carga la página infinitamente.

He estado ejecutando un script con éxito diariamente por un tiempo, pero ahora parece estar generando un error de tiempo de espera.

chromever = "96.0.4664.45"

rD <- rsDriver(browser="chrome", port=free_port(), chromever = chromever)

remDr <- rD[["client"]]

remDr$navigate("https://www.theweathernetwork.com/ca/14-day-weather-trend/british-columbia/coquitlam")

pageinfo <- read_html(remDr$getPageSource()[[1]])

precipitation <- pageinfo %>% html_nodes(".wxCell .wxObs") %>% html_text()

En la línea navigate, la página web carga interminablemente, eventualmente generando el siguiente error:

Selenium message:timeout: Timed out receiving message from renderer: 299.608
  (Session info: chrome=96.0.4664.45)
Build info: version: '4.0.0-alpha-2', revision: 'f148142cf8', time: '2019-07-01T21:30:10'
System info: host: 'WSS-WEATHER', ip: 'mi dirección IP aquí', os.name: 'Windows Server 2016', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_291'
Driver info: driver.version: unknown

Error: Resumen: Tiempo de espera
Detalle: Una operación no se completó antes de que expirara su tiempo de espera.
clase: org.openqa.selenium.TimeoutException
Detalles adicionales: ejecutar el método errorDetails

Chrome no se ha actualizado ni nada similar, así que no estoy seguro de qué pudo haber causado que esto comenzara a suceder aparentemente de la nada. ¿Alguna idea?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Es posible que haya habido cambios en la página web a la que el script intenta navegar que estén causando el error de tiempo de espera. Esto podría deberse a cambios en el código o estructura del sitio web, o incluso a cambios en la red o servidor que estén afectando el rendimiento del sitio web.

    Una cosa que se puede intentar es aumentar el límite de tiempo de espera en la llamada de función remDr$navigate(), utilizando el parámetro timeout. Por ejemplo, se podría intentar establecer timeout = 60000 para aumentar el límite de tiempo de espera a 60 segundos.

    Si eso no funciona, podría valer la pena intentar navegar a un sitio web diferente para ver si el problema persiste. Si el problema solo ocurre con este sitio web en particular, es probable que haya habido cambios en el sitio web que estén causando el problema.

    Otra cosa a considerar sería actualizar la versión de chromedriver que se está utilizando, en caso de que haya habido cambios en el navegador que estén causando problemas de compatibilidad con la versión actual.

    También es posible que haya otros factores en juego, como problemas de red o servidor, por lo que podría valer la pena investigar posibles problemas en esas áreas también.

Comments are closed.