Как получить значение «Div/yield» от here? я пробовал //td[node()='Div/yield'
и //td[text()='Div/yield'
.xpath поиск из функции importxml в листах google
и //td[@data-snapfield='latest_dividend-dividend_yield']/following-sibling::td
Как получить значение «Div/yield» от here? я пробовал //td[node()='Div/yield'
и //td[text()='Div/yield'
.xpath поиск из функции importxml в листах google
и //td[@data-snapfield='latest_dividend-dividend_yield']/following-sibling::td
@sideshowbarker является правильным в том, что есть символ новой строки в конце так ищет элемент с точным текстом вернет 0 результатов. Другой способ сделать это (один - через ответ @ sidehowbarker) - искать элемент, содержащий этот текст. Таким образом, первый шаг:
//td[contains(text(),'Div/yield')]
Но вам не нужно. Ваш последний ответ на правильном пути. Вы определили элемент, который вам нужен, но я думаю, что вы ищете текст. Так что вам нужно добавить text()
в конце:
//td[@data-snapfield='latest_dividend-dividend_yield']/following-sibling::td/text()
Но если вы хотите использовать имя поля, так что вы можете использовать XPath для других областей, а затем просто объединить этот:
//td[contains(text(),'Field name')]/following-sibling::td/text()
Теперь просто заменить имя поля с полем вы после этого ..
например 'Div/yield': //td[contains(text(),'Div/yield')]/following-sibling::td/text()
Похоже, что есть символ новой строки в конце этой ячейки таблицы, так что, возможно попробовать:
//td[normalize-space(.)='Div/yield']