如何获得具有相同类名的DIV标签中的元素文本



我的Web应用程序中有38个DIV标签,我想在每个DIV标签中获取文本。

<div class="w-100 dt pa2 f7">//这是父级

<div class="bg-white-10">//子类

<div class="dib bg-dirty-green w-100">//sublcass

<p class="pa2 ma0 fl f6">//从我想捕获文本的地方

<span class="v-mid">Mega Contest - 20</span> </p>//这是我要捕获的文本。

我尝试了以下代码: -

WebElement wb = driver.findElement(By.xpath("/html/body/div[1]/div/div/div[2]/div[3]/div[3]")); //CONTEST_TABLE

List<WebElement> list = driver.findElements(By.xpath("//*[@class='pa2 ma0 fl f6']")); //NUMBER_OF_CONTEST

    int rc=list.size();
    System.out.println(rc);
    for(int i=0;i<rc;i++)
    {
        WebElement Contest_Name= list.get(i).findElement(By.xpath("//*[@class='pa2 ma0 fl f6']"));
        String name = Contest_Name.getText();
        System.out.println(name);
    }

我正在参加"大竞赛-20"38次...

无需在列表数组中检索元素,您可以单个时间获得它:

//span[@class='v-mid']如果跨度类具有唯一名称,

或如果您可以使用XPATH条件的以下参数使用的公共类名称: //p[@class='pa2 ma0 fl f6']//following::span[@class='v-mid']

最新更新