我使用硒进行任务,并尝试计算kibana图中元素的列表。寻找正确的xpath来计算元素
该文档就是这样
<div class="chart-wrapper">
<div class="chart">
<svg height="454" width="2031">
<g clip-path="url(#chart-area256)" transform="translate(0,10)">
<clipPath id="chart-area256"><rect height="439" width="2031" y="0" x="0"></rect>
</clipPath>
<g class="pathgroup 0"><path d="...."></path></g>
<g class="pathgroup 1"><path d=""></path></g>
<g class="pathgroup 2"><path d=""></path></g>
<g class="points area">
...</g>
</svg>
</div>
</div>
我查询所有g或所有@类= “路径组”
print(len(driver.find_elements_by_xpath('//g')))
和
print(len(driver.find_elements_by_xpath('//g[@class="pathgroup"]')))
两个返回零个元素一些原因。所以我也试过其他查询
len(driver.find_elements_by_xpath('//div[@class="chart"]'))
// div [@ class =“chart”]看起来可以工作。 devtools返回svg,这是正确的。但是,当我尝试
$x('//div[@class="chart"]/svg').length #devtools command
再次返回零。虽然
$x('//div[@class="chart"]/*').length #devtools command
返回正确的值
我只是想知道为什么和怎么样!任何想法?因为没有这样的类作为“路径组”页上,但“路径组0”,“1路径组”
http://stackoverflow.com/questions/8513691/using-xpath-count-with-contains? – JimmyB
你使用正确的xpath?你怎么得到它? – fabersky
@fabersky是的它的正确的xpath。现在我用'// div [@ class =“chart”]/*/*/*来获得我感兴趣的所有元素。但这不是有效的,并试图了解为什么如果我使用路径中的实际标签不起作用。 – b10n1k