gpt4 book ai didi

java - 使用 li 元素迭代表

转载 作者:行者123 更新时间:2023-12-02 12:01:20 25 4
gpt4 key购买 nike

有人可以协助解决以下问题吗:我有一个动态数据表,每行有 5 个元素(共有 30 行)。我必须遍历每一行,获取每一列的数据并检查它是否不为零。这是它在页面上的样子(实际上它是从 xpath 中获取的):

/html/body/main/article/div/div[3]/div[1]/div/div/ol[1]/li[3]/div[1]/a

上面是第一个用户及其用户名。我看到的所有用户名(来自该表):

/html/body/main/article/div/div[3]/div[1]/div/div/ol[1]/li/div[1]/a

正如您所看到的,最后一个 li 没有数字,当有数字时,它指向位置为:1, 2, 3 .... 30 的用户名所以,我的问题是,如何在 li 元素迭代中使用。我试过这个:

First found size of table:
int all = driver.findElements(By.xpath("/html/body/main/article/div/div[3]/div[1]/div/div/ol[1]/li/div[1]/a")).size();
for (int i = 0; i < all; i++) {
//check if username exists and convert int to a string
String j = Integer.valueOf(i);

最后将其放入找到的 xpath 元素中(最后一个 li):

driver.findElements(By.xpath("/html/body/main/article/div/div[3]/div[1]/div/div/ol[1]/li["+get(j)+"]/div[1]/a"))

我做错了什么并且在每次迭代中都没有改变li[当前数字]?先感谢您 enter image description here

这是 HTML:

<li class="list-item row">
<div class="column large-4 compete-standings-user">
<div class="user-photo"><img
<a "profile/kalaka" title="Kalaka">Kalaka</a>
<div class="column large-2 small-3 compete-standings-data">
<strong>71</strong>blogs</div>
<div class="column large-2 small-3 compete-standings-data">
<strong>+69.9</strong>Accepted</div>
<div class="column large-2 small-3 compete-standings-data">
<strong>+21.1%</strong>Pending</div>
<div class="column large-2 small-3 compete-standings-datae">
<strong>L100</strong>Earned</div>

enter image description here

最佳答案

因此,获取要检查的文本的快速方法是使用 CSS 选择器 ol.compete-stands > Strong。如果您注意到 HTML,您要检查的每个数字都位于 STRONG 标记中。此定位器获取外部 OL 标记内的所有 STRONG 标记。

List<WebElement> numbers = driver.findElements(By.cssSelector("ol.compete-standings > strong"));
for (WebElement number : numbers)
{
String s = number.getText().replaceAll("[^\\d]", "");
Assert.assertNotEquals(0, Integer.parseInt(s));
}

此代码删除除数字之外的所有字符,将字符串转换为 int,并断言(使用 TestNG)该数字不为零。如果您没有使用 TestNG (或等效的)...您应该使用:)。您可以直接添加您自己的验证。

关于java - 使用 li 元素迭代表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47237520/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com