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.

Xpath de una celda de tabla basado en la otra celda en la misma fila.

Este es el código HTML que recibí:

<tr class="">
    <td>
        <a href="www.google.com">Ir a Google</a>
    </td>
    <td>02/10/20, 09:24 AM</td>
    <td><button type="button" class="delete"></td>
</tr>

Como puede ver, el <tr> tiene tres <td>s. Ahora, estamos hablando de una tabla, por lo que podemos suponer que tengo 100 de estos <tr>s con diferentes valores, pero con la misma estructura. Me gustaría obtener el xpath del tercer td (el botón), utilizando el valor de <a> (‘Ir a Google’). ¿Cómo puedo hacer eso? Sé que necesito algo así como:

(//td//parent::a)

pero evidentemente no soy lo suficientemente inteligente para eso.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para obtener el xpath del tercer td (el button) usando el valor de <a> ('Ir a Google'), puede utilizar la siguiente consulta de xpath:

    //td[preceding-sibling::td/a/text()="Ir a Google"]/button[@class="delete"]
    

    Esta consulta selecciona el elemento td que viene después de otro elemento td que contiene un elemento a con el texto 'Ir a Google'. Luego, se selecciona el elemento button dentro de este elemento td utilizando su atributo class. El eje preceding-sibling:: se utiliza para seleccionar el elemento td anterior y el eje /button se utiliza para seleccionar su elemento hijo button.

    Tenga en cuenta que esta consulta presupone que solo hay un elemento button con la clase 'delete' en cada elemento td. Si hay varios elementos button de este tipo, es posible que deba modificar la consulta para que sea más específica.

Comments are closed.