HTML代码
<label for="ctl00_ContentPlaceHolder1_RadPanelBar1_i0_chkColumns_21">Royality Free</label>
Selenium Code
driver.findElement(By.id("ctl00_ContentPlaceHolder1_RadPanelBar1_i0_chkColumns_21")).getText();
即使我尝试了getAttribute(),上面的selenium代码也无法正常工作; 它显示NullPointerException
答案 0 :(得分:1)
您正在尝试从标签中读取文字但您找到的元素ID为ctl00_ContentPlaceHolder1_RadPanelBar1_i0_chkColumns_21
这不是标签的ID。
您的代码应为:
WebElement labelElement = driver.findElement(By.cssSelector("label[for="ctl00_ContentPlaceHolder1_RadPanelBar1_i0_chkColumns_21"]"));
System.out.println(labelElement.getText());
这应该有用。
此外,定位器:ctl00_ContentPlaceHolder1_RadPanelBar1_i0_chkColumns_21
似乎是随机生成的定位器。只是确认它不是这种情况。如果是,那么您将需要更改定位策略。