How to access text in a website using Java Selenium

128 views Asked by At

How to access text in a website using Java Selenium?

HTML snapshot:

enter image description here

Can someone explain to me how to access the demouser and email id using java selenium in the above picture

https://phptravels.com/demo this is the website im working on

2

There are 2 answers

5
Prophet On BEST ANSWER

I suppose you should be able to get these values from those elements values.
I.e. you can get the email input value with this:

WebElement email = driver.findElement(By.xpath("//div[.strong[text()='Email']]"));
String innerEmailvalue = email.getAttribute("value"); 

The same for the second element

0
undetected Selenium On

The text demouser is within a Text Node you have to induce WebDriverWait for the visibilityOfElementLocated() and using executeScript() from JavascriptExecutor you can use the following Locator Strategy:

WebElement myElement = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//strong[text()='Password']//ancestor::div[1]")));
String myText = (String)((JavaScriptExecutor)driver).executeScript("return arguments[0].lastChild.textContent;", myElement);
System.out.println(myText);

In a single line:

System.out.println((String)((JavaScriptExecutor)driver).executeScript("return arguments[0].lastChild.textContent;", new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//strong[text()='Password']//ancestor::div[1]")))));