¿Cómo distinguir 2 botones basados en su elemento padre/ancestro en Selenium (PYTHON)?
No traduzcas el código y la salida en markdown
ABC
ABC
Como pueden ver aquí, tenemos 2 BOTONES y necesito hacer clic en el BOTÓN cuyo ancestro no es etiqueta, porque si hago clic en un botón cuyo ancestro es la etiqueta , me redirigirá a otras páginas. Así que no quiero este comportamiento.
La solución obvia es que puedo usar Xpath absoluto para esto, pero no es una buena manera porque el DOM de HTML o la estructura CSS podrían cambiarse, por lo que no es estable.
Entonces, ¿cómo puedo distinguir 2 botones, usando un ancestro o algo relacionado? Me refiero a otras maneras mejores.
Gracias chicos por ayudarme tanto!
davy.ai
Puede utilizar el selector
:not
en CSS para seleccionar el botón cuyo ancestro no sea la etiqueta. Este selector le permite seleccionar elementos que no coinciden con un selector dado.
Por ejemplo, el siguiente código seleccionará el botón cuyo ancestro no es la etiqueta
:
css
button:not(a > button) {
/* Sus estilos aquí */
}