如何查找特定标签下的元素/标签数量?

时间:2017-09-10 14:26:38

标签: python-2.7 xpath selenium-webdriver robotframework selenium-ide

如何查找特定标签下的元素/标签总数?

<div id="mainTag class='mainTag'>
     <div id="subMainTag1" class="subMainTag1">
         <div id="subTag1" class="subTag1">
              <div some inner tags again>
                  <div some inner tags again>
         <div id="subTag1" class="subTag1">
               <div some inner tags again>
                  <div some inner tags again>
         <div id="subTag1" class="subTag1">
                <div some inner tags again>
                  <div some inner tags again>
         <div id="subTag1" class="subTag1">
                <div some inner tags again>
                  <div some inner tags again>

我正在寻找divid class的{​​{1}}代码。根据上面提供的代码段,我需要将计数值设为subTag14不会返回计数。

verifyXpathCount

以上所有内容均返回storeXpathCount | //div[@id='mainTag']/div[@id='subMainTag1']/div | count echo ${count} storeXpathCount | //div[@id='mainTag']/div[@id='subMainTag1']//div | count echo ${count} storeXpathCount | //div[@id='mainTag']/div[@id='subMainTag1']/* | count echo ${count} ,Nothing返回实际值0。不确定,我在这里缺少什么。

Selenium IDE / web-driver:python,一切都很好。

解答: 4工作正常。我错过了选择框架。 storeXpathCount在Robot Framework中也可以正常工作。

2 个答案:

答案 0 :(得分:3)

添加到PHP manual,因为他不明白你试图使用Robot Framework实现这一点。他的辩护并不是那么清楚。

使用他提供的XPath,您可以使用kjhughes's answer关键字。像这样:

XPath Should Match X Times    //div[@id='mainTag']/*    4

如果您需要存储检索到的匹配计数,您可以使用非常相似的关键字Xpath Should Match X Times,如下所示:

${count}=    Get Matching XPath Count    //div[@id='mainTag']/*

答案 1 :(得分:1)

这个XPath,

count(//div[@id='mainTag']/*)

将返回div元素下id属性值为mainTag的子元素数。