我正在尝试自动化Snapdeal网站。
遵循的步骤:
SnapdealHome->Hover
Computer&Gaming->Storage->Select
1TB和16gb。
然后我想打印容量过滤器所包含的内容。
我试过这个xpath
,但它没有显示任何内容。
这是ajax代码吗?
我想打印capacity.getText()
包含的内容。
这些是我尝试的xpath
:
$x("//div[@class='navFiltersPill'][contains(text(),'Capacity:')]")
和$x("//div[@class='navFiltersPill']")
。
输出应为:1TB和16GB。有可能吗?
答案 0 :(得分:0)
请尝试使用低于xpath的findElements,然后逐个循环所有匹配的元素来检索文本。这将明确列出容量过滤器部分下的所有过滤条件。根据您的要求更改xpath中的以下数据名称值。
//div[@data-name='Capacity_s'][contains(@class,'filter-inner filter-inner-height')]/div[contains(@class,'active-filter')]/label/a
示例代码:[确保在点击此行之前添加等待]
List<WebElement> ele=d.findElements(By.xpath("//div[@data-name='Capacity_s'][contains(@class,'filter-inner filter-inner-height')]/div[contains(@class,'active-filter')]/label/a"));
for (WebElement e:ele){
System.out.println(e.getText());
}
答案 1 :(得分:0)
您必须遍历所有已检查的INPUT并打印其function GetData() {
$('.item_code').click(function(){
alert($(this).closest('tr').find('.item_code'));
});
}
。例如,
value
将打印
for (WebElement e : driver.findElements(By.cssSelector("input[checked]")))
{
System.out.println(e.getAttribute("value"));
}
1%20TB
16GB
是一个空格。