Чтение значения вне тегов диапазона в селене - PullRequest
0 голосов
/ 05 февраля 2019

Я новичок в селене, я пытаюсь получить текст, который находится вне тегов span

<span>Source directory: </span>
"/cs/orasoa/devtools/build/2353704573222573/A2B_LSP/RPMS/x86_64"
<br>.

Я хочу получить это значение:

/cs/orasoa/devtools/build/2353704573222573/A2B_LSP/RPMS/x86_64

Я использую xpath /html/body/div/div[4]/div[2]/span[3], но он выдает: Source directory:

Может кто-нибудь предложить.

Ответы [ 2 ]

0 голосов
/ 06 февраля 2019

Если ваш HTML выглядит примерно так:

<div>
    <span>Source directory: </span>
    "/cs/orasoa/devtools/build/2353704573222573/A2B_LSP/RPMS/x86_64"
    <br />
</div>

Используя ваш xpath, вы бы выбрали: /html/body/div/div[4]/div[2] Итак, у вас есть WebElement, который представляет родительский div.Когда вы вызываете element.Text, вы должны получить что-то вроде: Source directory: /cs/orasoa/devtools/build/2353704573222573/A2B_LSP/RPMS/x86_64

Примечание: я бы очень рекомендовал добавить ID для элемента.Имеющийся у вас xpath чрезвычайно хрупкий, так как он зависит от загрузки всей страницы определенным образом.Если кто-то добавит div выше текущего, ваш тест не будет вести себя так же.

0 голосов
/ 05 февраля 2019

Я использовал следующий XML для проверки:

<root xmlns:foo="http://www.foo.org/" xmlns:bar="http://www.bar.org">
    <actors>
        <actor id="1">Christian Bale</actor>
        <actor id="2">Liam Neeson</actor>
        <actor id="3">Michael Caine</actor>
    </actors>
    <foo:singers>
        <foo:singer id="4">Tom Waits</foo:singer>
        <foo:singer id="5">B.B. King</foo:singer>
        <foo:singer id="6">Ray Charles</foo:singer>
    </foo:singers>
<span>Source directory: </span>
"/cs/orasoa/devtools/build/2353704573222573/A2B_LSP/RPMS/x86_64"
</root>

и XPATH

root/span/following-sibling::text()

приводит к

Text='
"/cs/orasoa/devtools/build/2353704573222573/A2B_LSP/RPMS/x86_64"
'

, так что оно более или менеето, что ты хочешь.Однако я не уверен, что это

/html/body/div/div[4]/div[2]/span[3]/following-sibling::text()

будет действительным выражением xpath в вашем случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...