一尘不染

如何在机器人框架中获取所有文本?

selenium

考虑以下源代码,

<div id="groupContainer" class="XXXXXX">

<ul id="GroupContactListWrapper" class="list-wrapper">
    <li class="contactNameItemContainer">

        <div class="contactNameItem">
            <span class="name">Name1</span>
        </div>

    </li>
    <li class="contactNameItemContainer">

        <div class="contactNameItem">
            <span class="name">Name2</span>
        </div>

    </li>
</ul>

</div>

如何检索列表变量中的两个名称(Name1,Name2)?我为“ Get Text”关键字尝试了以下xpath,但仅返回第一个。

//div[@id='groupContainer']//li[@class='contactNameItemContainer']//span

请建议


阅读 273

收藏
2020-06-26

共1个答案

一尘不染

您可以遍历以下元素:

${xpath}=    Set Variable    //div[@id='groupContainer']//li[@class='contactNameItemContainer']//span
${count}=    Get Matching Xpath Count    ${xpath}
${names}=    Create List
:FOR    ${i}    IN RANGE    1    ${count} + 1
\    ${name}=    Get Text    xpath=(${xpath})[${i}]
\    Append To List    ${names}    ${name}

这种方法有效,但是在有许多匹配项时速度很慢。

2020-06-26