남자 Selenium Automation을 배우고 있습니다.Selenium Java를 사용하여 다른 ul 태그 안에 텍스트를 인쇄하는 방법
나는 아래와 같이 웹 사이트를 디자인했습니다.
내 HTML 코드 :
<!DOCTYPE html>
<html>
<head><title>Shop</title></head>
<body>
<ul>
<li><a href="www.rendertofruitsection.com">Fruits</a>
<ul>
<li><a href="www.addbananatocart.com">» Banana</a></li>
<li><a href="www.addappletocart.com">» Apple</a></li>
<!--List goes on-->
</ul>
</li>
<li><a href="www.redertovegsection">Vegetable</a>
<ul>
<li><a href="www.addcapcicumtocart">» Capsicum</a></li>
<li><a href="www.addtomatotocart.com">» Tomato</a></li>
<li><a href="www.addoniontocart">» Onion</a></li>
<!--List goes on-->
</ul>
</li>
<li><a herf="www.nonveglink.com">Non Veg Section</a></li>
<!--List goes on-->
</ul>
</body>
</html>
처음에 나는 자바 셀레늄을 사용하여
<a>
태그 안에 제시되는 모든 텍스트를 나열하는 계획을 세웠다.
그래서이 코드를 작성했습니다.
내 자바 코드 : 내가 가진 필요한 무엇
public class shop
{
public static void main(String[] args)
{
WebDriver driver= new ChromeDriver();
driver.get("www.myshopping.com");
List<WebElement> text= driver.findElements(By.xpath("//a"));
for(int i=0;i<text.size();i++)
{
System.out.println(i+". "+text.get(i).getText());
}
}
}
출력 :
이Output what I got: | Output What I need:
1. Fruits | 1. Fruits
2. | 2. Banana
3. | 3. Apple
4. Vegetable | 4. Vegetable
5. | 5. Capsicum
6. | 6. Tomato
7. | 7. Onion
8. Non Veg Section | 8. Non Veg Section
얘들 아 그냥 셀레늄 자바를 사용하여 내부 <ul>
의 <li>
태그의 텍스트를 얻는 방법, 약간의 힌트를 말한다.
나는 이것을 몇 가지 시도했지만, 나는 여기에 갇혔다. 도움을 요청하십시오.
public class shop
{
public static void main(String[] args)
{
WebDriver driver= new ChromeDriver();
driver.get("www.myshopping.com");
List<WebElement> text= driver.findElements(By.xpath("//li[ul]/a"));
for(int i=0;i<text.size();i++)
{
System.out.println(i+". "+text.get(i).getText());
WebDriverWait wait = new WebDriverWait(i, 10);
List<WebElement> innerText = wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.xpath(".//following-sibling::ul//a[text()]")));
for(int j=0; j<text.size(); j++)
{
System.out.println(i+". "+j+". "+text.get(j).getText());
}
}
}
}
이 코드는 나에게 당신이 찾고있는 모든 텍스트를 주었다 링크를 따라
CSS 셀렉터 참고로 : 그것은 단지 로케이터 변화입니다. 또한 0에서 7까지 숫자를주었습니다. *** 정확한 *** 코드와 출력을 제공하십시오. 그렇지 않으면 우리는 당신을 도울 수 없습니다. – Guy
'getAttribute ("innerText")'내 경우에 적용됩니다. 모두 고마워요 – Srini