¿Es posible localizar un elemento por coincidencia parcial de la clase en Selenium?
Estoy comenzando con Selenium y estoy tratando de localizar el botón “Siguiente” en el sitio de CNN y, si no es la última página, hacer clic en él; de lo contrario, finalizar el programa.
El código HTML para el botón habilitado es:
<div class="pagination-arrow pagination-arrow-right cnnSearchPageLink text-active">
"Siguiente"
<i class="icon icon--arrow-right"></i>
</div>
El código HTML para el botón deshabilitado es:
<div class="pagination-arrow pagination-arrow-right text-deactive">
"Siguiente"
<i class="icon icon--arrow-right"></i>
</div>
¿Cómo debo abordar la solución? Intenté is_enabled()
o encontrar parte del texto en el nombre de la clase, pero no tuve éxito. ¿Qué debo hacer?
davy.ai
Para localizar el botón “Siguiente” en el sitio de CNN utilizando Selenium WebDriver, puede utilizar el siguiente enfoque:
is_enabled()
para verificar si el botón se puede hacer clic o no. Si el botón no se puede hacer clic (es decir, deshabilitado), significa que ha llegado a la última página y debe finalizar el programa.Aquí hay un código de ejemplo en Python que puede utilizar para implementar este enfoque:
Tenga en cuenta que el código anterior asume que ya ha navegado a la página de resultados de búsqueda en el sitio web de CNN. Si no es así, puede modificar el método
get()
del webdriver para ir a la URL de la página correcta. Además, si tiene problemas para encontrar el elemento del botón “Siguiente”, puede intentar utilizar selectores alternativos hasta que encuentre uno que funcione.