Estoy tratando de obtener el texto 'Administrador RGF' del ejemplo html a continuación. La dificultad es que el título puede tomar dos valores: 'Configuración de la aplicación' o 'Параметры приложения'. Al mismo tiempo, html puede contener otros elementos con title = 'Opciones de aplicación'.
¿Que puedo usar xPath para ello?
<div>
<button
title="Application options">
<span>
<span>
<bdi>
RGF Administrator
</bdi>
</span>
</span>
</button>
</div>
Uso selenio, pero no puedo determinar el xPath para 'Administrador RGF'.
xpath = "//*[@title='Параметры приложения' or @title='Application options']"
No funcionará ya que al mismo tiempo, html puede contener otros elementos con title = 'Opciones de aplicación'.
3 respuestas
Pruebe esta expresión xpath en su xml real y vea si funciona:
//div/button[@title = ('Параметры приложения', 'Application options')]//bdi/text()
Si está utilizando selenio, debe usar el método get_attribute(string)
. Entonces, por ejemplo, cuando encuentre los elementos xpath:
element = driver.find_element_by_xpath("xpath")
Y luego hacer
element.get_attribute("title")
Para obtener Application options
¿Cuántos contenedores bdi tienes en la página web? Si solo hay 1, literalmente puedes usar
//bdi
Y no necesitas ningún camino.
Preguntas relacionadas
Nuevas preguntas
html
HTML (HyperText Markup Language) es el lenguaje de marcado para crear páginas web y otra información que se mostrará en un navegador web. Las preguntas sobre HTML deben incluir un ejemplo mínimo reproducible y una idea de lo que está tratando de lograr. Esta etiqueta rara vez se usa sola y, a menudo, se combina con [CSS] y [javascript].