我是硒工具的新手。 我有一个网址为url:https://m.karmaloop.com/
我需要在Shop Mens页面中打印内容,例如,类别,顶级品牌,新品等。
steps:
=====
1.Launch https://m.karmaloop.com/
2.Tap on Shop Mens image
3.User will be navigated to Shop Men's Page.
4.Fetch and display the contents like , Categories,Top Brands, New etc.
我已经编写了访问它的代码。但不幸的是它没有用。
这是我的代码:
driver2.get(configuration.Home_url);
driver2.findElement(By.xpath(configuration.Shopmens)).click();
WebElement Mens_Object=driver2.findElement(By.id("browse-new-product"));
System.out.println("clicked");
List<WebElement> lists=Mens_Object.findElements(By.tagName("li"));
System.out.println("captured ul");
lists.get(3).click();
List<WebElement> ListElements =lists.get(3).findElements(By.tagName("a"));
System.out.println(ListElements.get(2).getText());
任何人都可以帮我解决这个任务。?
答案 0 :(得分:2)
使用此代码: -
List<WebElement> liElements = driver.findElements(By
.xpath("//ul[@id='browse-new-product']/li"));
System.out.println(liElements.size());
for (int i = 1; i < liElements.size()+1; i++) {
WebElement linkElement = driver
.findElement(By
.xpath("//ul[@id='browse-new-product']/li[" + i
+ "]/a"));
System.out.println(linkElement.getText());
}
答案 1 :(得分:1)
这肯定有助于获取列表中的元素..
int i = 0;
List<WebElement> elementsList = seldriver.findElements((By.xpath("/html/body/div[2]/div/div/div/div/div[2]/div/div[1]/div[4]/ul/li")));
for(WebElement checkBox:elementsList) {
checkBox = elementsList.get(i);
String value = checkBox.getText();
System.out.println("Checkbox = " + value);
System.out.println(" i =" + i);
i=i+1;
}
答案 2 :(得分:0)
我不确定这可能有效但请看看
List<WebElement> allElements = driver.findElements(By.xpath("//div[@id='...']/ul/li"));
for (WebElement element: allElements) {
System.out.println(element.getText());
}
答案 3 :(得分:0)
我试图运行你的代码并且它抛出错误说元素不可见。
如果您想对菜单“ lists.get(3).click(); ”执行操作,请始终选择“组”并查找“子”集团“并执行行动。 (确保元素可见)
以下是我在同一网站(https://m.karmaloop.com/)上尝试的示例代码。在这里,我正在尝试检查 类别&gt;&gt;限量版
WebDriver Driver=new FirefoxDriver();
Driver.get("https://m.karmaloop.com/");
Driver.findElement(By.className("category-men")).click();
Driver.findElement(By.linkText("CATEGORIES")).click(); //Selecting a Group
Driver.findElement(By.linkText("LIMITED EDITION")).click(); //Now Selecting a sub Group
除了使用标签之外,尝试使用ID,LinkText,ClassName。希望这有帮助
答案 4 :(得分:0)
以下代码是python语言,对我有用
driver.find_element_by_class_name("category-men").click()
options=driver.find_element_by_class_name("accordion")
for option in options:
print option.text