выберите родительский узел, содержащий текст в детском узле

В C это сделано с помощью аргументов, переданных Вашему main() функция:

int main(int argc, char *argv[])
{
    int i = 0;
    for (i = 0; i < argc; i++) {
        printf("argv[%d] = %s\n", i, argv[i]);
    }
    return 0;
}

[еще 114] информация может быть найдена онлайн, такие как это Аргументы основному статья.

5
задан Thomas Vander Stichele 5 September 2014 в 15:50
поделиться

2 ответа

Вы можете добавить "/ ..", чтобы привязать к родительскому элементу. Не уверен, есть ли более надежный метод.

expression = "//div[contains(text(), 'Child text 1')]/.."
7
ответ дан 18 December 2019 в 08:29
поделиться

Следующее выражение дает узел (div), в котором любые дочерние узлы (не только h1, b, h3) содержат указанный текст (а не сам div):

doc.xpath('//div[.//*[contains(text(), "Child text 1")]]')

вы можете уточнить это и вернуть единственный div с id contents , как в вашем примере:

doc.xpath('//div[@id="contents" and .//*[contains(text(), "Child text 1")]]')

Он не совпадает, если текст является текстовым узлом div (непосредственно внутри div), что является моей интерпретацией вопроса.

12
ответ дан 18 December 2019 в 08:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: