【发布时间】:2017-07-18 02:51:16
【问题描述】:
使用 selenium webdriver,我需要从 div 标签中获取文本,其中包含日期,如何使用它
这里是显示 div 标签的 HTML 标签。
<div class="gridlayout-column" style="padding-left: 10px; width: calc((100% - 110px) * 0.166667 + 10px);">
<div class="gridlayout-content">
<label class="fieldlabel">
<div class="fieldlabel-label">Last update</div>
<div class="fieldlabel-content">Jul 12, 2017</div>
</label>
</div>
</div>
我为上述内容创建了一个 webelement 并尝试使用
WebElement lastUpdate = driver.findElement(By.xpath("//*[ . = 'Last update' and //div[contains(@class, 'fieldlabel-content')]]/following-sibling::div[@class='fieldlabel-content']"));
lastUpadte.getText();
输出是--
所以我的另一个选择是这个
Date expiryDate = null;
DateFormat formatter = new SimpleDateFormat("MMM DD, YYYY");
String dateString = lastUpdate.getText();
try {
expiryDate = formatter.parse(dateString);
}
catch (ParseException e) {
e.printStackTrace();
}
还是不行。我确定我做得不对,所以请帮我解决这个问题。
【问题讨论】:
-
此 xpath "//label[@class='fieldlabel']/div[2]" 的 getText 是否返回日期?
-
你能在你的问题中添加你的硒代码吗?我们需要看看
webElement是从哪里来的。 -
WebElement webElement = driver.findElement(By.xpath("//*[ . = 'Last update' and //div[contains(@class, 'fieldlabel-content')]]/following-sibling::div[@class='fieldlabel-content']")); webElement.getText();从您的代码中删除 findElementdriver。然后再试一次。 -
@Buaban 我已经添加了 webElement 部分
标签: java selenium selenium-webdriver