Если вы хотите получить столбец address
на основе номера phone
, вот xpath. Xpath является динамическим, поэтому вам не нужно беспокоиться, если позиции столбцов изменятся.
//table[@id='users-table']//td[.='05680' and position()=count(//th[normalize-space(.)='Phone']/preceding-sibling::th)+1]/ancestor::tr//td[position()=count(//th[normalize-space(.)='address']/preceding-sibling::th)+1]
Если вы хотите использовать оба значения address
и phone
в xpath, используйте ниже.
//table[@id='users-table']//td[.='05680' and position()=count(//th[normalize-space(.)='Phone']/preceding-sibling::th)+1]/ancestor::tr//td[ .= '5 street' and position()=count(//th[normalize-space(.)='address']/preceding-sibling::th)+1]
Если вы хотите нажать на кнопку на основе address
и phone
, используйте приведенный ниже xpath (при условии, что в строке есть только одна кнопка)
//table[@id='users-table']//tr[td[.='05680' and position()=count(//th[normalize-space(.)='Phone']/preceding-sibling::th)+1] and td[ .= '5 street' and position()=count(//th[normalize-space(.)='address']/preceding-sibling::th)+1]]//button
Вы можете определить атрибут и значение кнопки в случае.
редактировать (добавить часть кнопки)
td[position()=count(//th/button[@id='add-user-button']/../preceding-sibling::th)+1]