【问题标题】:loop not printing what is required循环不打印所需的内容
【发布时间】:2021-06-15 16:14:57
【问题描述】:

这是我的代码:

for(WebElement trElement : tr_collection) {
List<WebElement> td_collection = trElement.findElements(By.xpath("td"));
   int col_num = 1;
   String rowHeader = "<tr>";
        for(WebElement tdElement : td_collection) {
            rows += "<td>"+tdElement.getText()+"</td>";
            col_num++;   
        }
        String rowFooter = "</tr>\r\n";
        row_num++;
        scrape = rowHeader + rows + rowFooter+"\n\n"; 
} 

输出是:

<tr><td>Airi Satou</td><td>Accountant</td><td>Tokyo</td><td>33</td><td>2008/11/28</td><td>$162,700</td><td>Angelica Ramos</td><td>Chief Executive Officer (CEO)</td><td>London</td><td>47</td><td>2009/10/09</td><td>$1,200,000</td></tr>

循环正在为第一次和最后一次迭代读取rowFooterrowHeader,而我试图在行的开头打印TR,当所有TDS 被提取时,然后在行的末尾作为对表格的所有行也是如此。

为什么scrape = rowHeader + rows + rowFooter+"\n\n"; 没有按要求打印?

更新
当我使用System.out.println() 打印没有String 值时,它工作正常:

for(WebElement trElement : tr_collection)
        {
            List<WebElement> td_collection=trElement.findElements(By.xpath("td"));
            col_num=1;
            System.out.println("<tr>");
            for(WebElement tdElement : td_collection)
            {
               System.out.println("<td>"+tdElement.getText()+"</td>\r\n");
               col_num++;
            }
            System.out.println("</tr>");
            row_num++;
        } 

【问题讨论】:

  • By.xpath("./td") 试试看。要使用 xpath 从父级获取子元素,我们使用 .访问它们。
  • @ArundeepChohan 抱歉,我正在测试另一个使用 System.out.println 打印的类。没用!!
  • 错误是什么?
  • @User169 :为什么scrape = rowHeader + rows + rowFooter+"\n\n"; 没有按要求打印?预期值和实际值是多少?你在哪里声明了scrape 变量?
  • @ArundeepChohan @KunduK 预期的输出是` all tds 一个接一个并且在每一行的末尾TR 而它的打印 NOT 用 TR 结束行并在没有 TR 结束标记的情况下在末尾迭代。仅在循环开始和结束时打印 TR

标签: java selenium loops for-loop arraylist


【解决方案1】:
By.xpath("./td")

要访问 trElement 的子元素,我们使用 .仅适用于 xpaths,同时使用 /tr 访问所有嵌套深度恰好是一个元素的 tds。

【讨论】:

    猜你喜欢
    • 2015-05-23
    • 2016-04-23
    • 1970-01-01
    • 1970-01-01
    • 2018-04-25
    • 1970-01-01
    • 2015-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多