Java Selenium:phpTravels网页,无法获取电子邮件和密码的值

Java Selenium:phpTravels网页,无法获取电子邮件和密码的值,java,selenium,xpath,automation,Java,Selenium,Xpath,Automation,我正在尝试获取以下网站首页前端的电子邮件和密码。 我需要得到的价值观。 user@phptravels.com demouser 代码: driver.get 它将只打印电子邮件,但我只想要电子邮件和密码的值,即。user@phptravels.com和demouser 我知道我没有编写正确的xpath,但我不确定如何编写此xpath。您正在尝试从页面上的以下div标记中选择文本 电子邮件user@phptravels.com 密码演示用户 例如,可以使用以下代码获取节点文本,并拆分字符串

我正在尝试获取以下网站首页前端的电子邮件和密码。

我需要得到的价值观。 user@phptravels.com demouser

代码: driver.get

它将只打印电子邮件,但我只想要电子邮件和密码的值,即。user@phptravels.com和demouser


我知道我没有编写正确的xpath,但我不确定如何编写此xpath。

您正在尝试从页面上的以下div标记中选择文本

电子邮件user@phptravels.com 密码演示用户

例如,可以使用以下代码获取节点文本,并拆分字符串以获取文本中的单词数组

    System.setProperty("webdriver.gecko.driver", "C:\\Utility\\BrowserDrivers\\geckodriver.exe");
    WebDriver driver=new FirefoxDriver();
    driver.get("http://phptravels.com/demo/");
    String my_text = driver.findElement(By.xpath("html/body/section[2]/div/div/div[1]/div/div/div[2]/div[2]/div/div[3]/div[2]/div")).getText();
    String[] words = my_text.split(" "); 
    String email= words[1];
    String password = words[3];
    System.out.println(my_text);
因此,您将需要使用该父div的xpath,然后使用字符串操作技术来提取值

见此:

这是:


有关Java字符串操作的参考信息,请参见:

以下是您问题的答案:

要在控制台上获取以下文本:

电子邮件user@phptravels.com

密码演示用户

您可以使用以下代码块:

    System.setProperty("webdriver.gecko.driver", "C:\\Utility\\BrowserDrivers\\geckodriver.exe");
    WebDriver driver=new FirefoxDriver();
    driver.get("http://phptravels.com/demo/");
    String my_text = driver.findElement(By.xpath("html/body/section[2]/div/div/div[1]/div/div/div[2]/div[2]/div/div[3]/div[2]/div[starts-with(normalize-space(),'Email')]")).getText();
    System.out.println(my_text);

如果这回答了您的问题,请告诉我。

这是您问题的答案

输出将是:

user@phptravels.com

demouser

代码:


我只需要电子邮件和密码值。获取值时,电子邮件和密码不应出现。我想把这些钱存起来user@phptravels.com在一个字符串变量中,在另一个字符串变量中。为了更好地理解,我编辑了这个问题。我想我以前不清楚。请看一看,让我知道是否可以不修剪。已经谢谢了,好的,谢谢。现在你能建议我如何得到这唯一的电子邮件吗user@phptravels.com ? 我不需要密码。如上所述,您需要使用常规的字符串操作方法。我已将示例代码添加到我的答案中,请参阅以下内容以供进一步参考:
    System.setProperty("webdriver.gecko.driver", "C:\\Utility\\BrowserDrivers\\geckodriver.exe");
    WebDriver driver=new FirefoxDriver();
    driver.get("http://phptravels.com/demo/");
    String my_text = driver.findElement(By.xpath("html/body/section[2]/div/div/div[1]/div/div/div[2]/div[2]/div/div[3]/div[2]/div[starts-with(normalize-space(),'Email')]")).getText();
    System.out.println(my_text);
    driver.get("http://phptravels.com/demo/");
    String my_text=driver.findElement(By.xpath("//div[3]/div[2]/div")).getText();
    System.out.println(my_text.substring(my_text.indexOf("Email")+5,my_text.indexOf("Password")));
 System.out.println(my_text.substring(my_text.indexOf("Password")+8));