gpt4 book ai didi

java - 如何从 web 表访问特定行

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:02:50 28 4
gpt4 key购买 nike

我正在尝试从下面给出的表格中选择一个特定的行类名为“topicRow post”

网站代码

<table class="content" width="100%">
<tbody>
<tr class="topicTitle">
<tr class="topicSubTitle">
<tr class="topicRow post">
<tr class="topicRow_Alt post_alt">
<tr class="topicRow post">
<tr class="topicRow_Alt post_alt">
<tr id="forum_ctl03_ctl00" class="header2">
<tr class="post">
<tr>
</tbody>
</table>

Selenium 代码

WebElement Webtable=driver.findElement(By.xpath("//*[@class='content']"));
List<WebElement> TotalRowCount=Webtable.findElements(By.xpath("//*[@class='content']/tbody/tr[contains(@class,'topicRow post')]"));
System.out.println("No. of Rows in the WebTable: "+TotalRowCount.size());

问题

每次打印表中所有行的大小。请指导...

最佳答案

在您的代码中,您已经使用 Webtable 查找行,但您仍然在 Webtable.findElements 中为 Webtable 重复 xpath 部分 "//*[@class='content']" ().

如下更改代码:

List<WebElement> TotalRowCount=Webtable.
findElements(By.xpath(".//tr[contains(@class,'topicRow post')]"));

或者更改为对重复的 xpath 部分使用 driver.findElements():

List<WebElement> TotalRowCount=driver.
findElements(By.xpath("//*
[@class='content']/tbody/tr[contains(@class,'topicRow post')]"));

如果以上两种方式都不能正常工作,请尝试下面的代码:

WebElement table = driver.findElement(By.css("table.content"));
List<WebElement> foundRows = table.findElements(By.css("tr.topicRow.post"));
System.out.println("Found rows count: "+ foundRows.size());

关于java - 如何从 web 表访问特定行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46139921/

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