Я работаю с веб-сайтом «Table styleled», используя selenium-webdriver
.Как найти ближайшего родителя по tag_name с помощью selenium
Существует множество гнезд таблиц и нет id
или name
атрибутов из них.
Итак, я решил получить заголовок текста в таблице, чтобы найти место таких данных.
driver = Selenimum::WebDriver.for :firefox
element = driver.find_element(:xpath,
"//font[@color='#FFFFFF' and text()='some probably unique text']")
из этого HTML.
<table><tbody>
...
<table><tbody><tr><td><font color="#FFFFFF">
some probably unique text
</font></td></tr></table>
...
</tbody></table>
Я хочу, чтобы получить внутри table
элемента из font
элемента, который я получил в коде выше. Я знаю, что могу получить element.find_element(:xpath, "../../../..")
, но это немного отвратительно.
Я хочу указать имя тега как минимум element.find_element(:xpath, "../*/table")
.
Есть ли способ сделать это?
Первый это все правильно, но добавить '(...) [1]' вокруг него, чтобы принести _nearest_ предок. Второй просто извлекает их все и не решает проблему. –
@JensErat: Да, вы правы, я думал, что таблицы параллельны, но они вложены. –
Просто понял, что было бы разумнее удалить скобку, в случае обнаружения нескольких таблиц для нескольких элементов шрифта; таким образом, возвратите первого предка таблицы для каждого элемента шрифта. –