No se puede encontrar el elemento (xpath) en RSelenium de un sitio web específico.
Estoy utilizando RSelenium
para hacer web scraping en el sitio web https://unicancer.sigaps.fr/.
Quiero revisar los puntos sigaps de mi equipo (para aquellos que no lo sepan, cuando publicas un artículo en una revista científica, obtienes puntos y cuanto más puntos tengas, más reconocimiento recibirás). Quiero automatizar la recopilación de esos datos.
Ya he utilizado RSelenium
en otros sitios web y funcionó, pero en este específico no puedo encontrar las etiquetas html con esas funciones:
remDr$findElement(using = "xpath", value = "/html/body/div[1]/div/div[2]/form/table/tbody/tr[2]/td[2]/input")$sendKeysToElement(list(username))
remDr$findElement(using = "name", value = "mdp")$sendKeysToElement(list(password))
He intentado con la etiqueta xpath y el nombre, pero ambos no funcionan. No puedo encontrar ninguno de los elementos de la página.
Obtengo este error:
Mensaje de Selenium: no hay tal elemento: no se puede encontrar el elemento:
{"method":"xpath", "selector":"/html/body/div[1]/div/div[2]/form/table/tbody/tr[2]/td[2]/input"}
(Información de la sesión: chrome = 96.0.4664.45)
Para obtener documentación sobre este error, visite:
https://www.seleniumhq.org/exceptions/no_such_element.html
Información de compilación: versión: '4.0.0-alpha-2', revisión: 'f148142cf8', hora: '2019-07-01T21:30:10'
Información del sistema: host: 'PD06B6F', ip: '10.208.107.111', os.name: 'Windows 10', os.arch: 'amd64',
os.version: '10.0', java.version: '1.8.0_261'
Información del controlador: driver.version: unknown
Error: Resumen: NoSuchElement
Detalle: No se pudo localizar un elemento en la página utilizando los parámetros de búsqueda dados.
class: org.openqa.selenium.NoSuchElementException
Más detalles: Ejecute el método errorDetails
Cuando estoy buscando en el código de la página con mi navegador, puedo identificar los elementos html:
<input name="login" class="text_box" type="text">
Así que el sitio web tiene un problema y necesito resolver el problema de interacción entre RSelenium
y él.
Aquí está todo mi código (tal vez sea un problema de docker. No sé realmente qué es aunque no soy un desarrollador web):
rD <- rsDriver(browser= "chrome", port = 3955L,chromever = "96.0.4664.45")
remDr <- rD[["client"]]
remDr$navigate("https://unicancer.sigaps.fr/")
remDr$screenshot(TRUE)
username <- "xyz"
password <- "lol93"
remDr$findElement(using = "xpath", value = "/html/body/div[1]/div/div[2]/form/table/tbody/tr[2]/td[2]/input")$sendKeysToElement(list(username))
remDr$findElement(using = "name", value = "mdp")$sendKeysToElement(list(password))
rD$server$stop()
remDr$close()
system("taskkill /im java.exe /f", intern=FALSE, ignore.stdout=FALSE)
davy.ai
Como modelo de lenguaje de Inteligencia Artificial, no tengo acceso real al sitio web o a las herramientas que se están utilizando. Sin embargo, basado en la información proporcionada, parece haber un problema con el código HTML del sitio web o la forma en que interactúa con
RSelenium
. El mensaje de error sugiere queRSelenium
no puede localizar los elementos necesarios en la página web, a pesar de estar identificados en el código de la página.Una posible solución es intentar usar diferentes métodos para localizar los elementos HTML, como selectores de CSS u otras expresiones xpath. Además, podría ser útil inspeccionar más el código HTML para verificar si hay elementos ocultos o iframes que puedan estar interfiriendo en el proceso de scraping.
Otra posibilidad es intentar actualizar el paquete
RSelenium
o usar un navegador diferente. A veces, pueden surgir problemas de compatibilidad al usar software obsoleto, lo que puede causar problemas con el web scraping.Si el problema persiste, podría ser útil buscar ayuda de otros expertos o profesionales en web scraping que puedan proporcionar más orientación.