Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JavaSelenium中获取下一个元素的值_Java_Selenium_Selenium Webdriver_Selenium Firefoxdriver - Fatal编程技术网

如何在JavaSelenium中获取下一个元素的值

如何在JavaSelenium中获取下一个元素的值,java,selenium,selenium-webdriver,selenium-firefoxdriver,Java,Selenium,Selenium Webdriver,Selenium Firefoxdriver,我总共有3个页面,所有三个页面都包含电子邮件id,我希望使用java selenium获得该电子邮件id。但所有三个页面都包含不同格式的电子邮件字段,我希望在一个代码中包含这些字段,因为我使用for循环来获取电子邮件ID 第1页: <p>Test1</p> <p>abc@abc.com</p> 但是我在该变量中得到了“email”,但没有得到它的值。请尝试以下代码: email = driver.findElement(By.xpath("//*

我总共有3个页面,所有三个页面都包含电子邮件id,我希望使用java selenium获得该电子邮件id。但所有三个页面都包含不同格式的电子邮件字段,我希望在一个代码中包含这些字段,因为我使用for循环来获取电子邮件ID

第1页:

<p>Test1</p>
<p>abc@abc.com</p>
但是我在该变量中得到了“email”,但没有得到它的值。

请尝试以下代码:

email = driver.findElement(By.xpath("//*[contains(text(), 'Email:')]/..")).getText();
请尝试以下代码:

email = driver.findElement(By.xpath("//*[contains(text(), 'Email:')]/..")).getText();

这应该得到包含电子邮件的p标签的全部内容

WebElement emailElement = driver.findElement(By.xpath("//p[contains(.,'@')]"));
String email = emailElement.getText().toString();
将文本作为字符串获取后,您可以拆分或使用stringbuilder构建实际的电子邮件


希望这有帮助

这应该得到包含电子邮件的p标签的全部内容

WebElement emailElement = driver.findElement(By.xpath("//p[contains(.,'@')]"));
String email = emailElement.getText().toString();
将文本作为字符串获取后,您可以拆分或使用stringbuilder构建实际的电子邮件


希望这有助于

而不是共享文本,共享您正在尝试的html代码和java代码。@GaurangShah我编辑了我的问题。检查一下。我很确定Gaurang也指的是您正在尝试的Java代码。我们不是来为您编写代码的,而是来帮助您编写自己的代码。如果每个元素的html都不同,那么使用一个函数与元素交互永远不是一个好主意。想想当事情发生变化时你会遇到什么问题。另外,你的代码将是不必要的复杂。基本上有多个网页,所以我会去该网页,并获得电子邮件和它的联系。所以我必须成为所有人的一个代码。有没有可能获取“电子邮件”的内容?与其共享文本,不如共享html代码和您正在尝试的java代码。@GaurangShah我编辑了我的问题。检查一下。我很确定Gaurang也指的是您正在尝试的Java代码。我们不是来为您编写代码的,而是来帮助您编写自己的代码。如果每个元素的html都不同,那么使用一个函数与元素交互永远不是一个好主意。想想当事情发生变化时你会遇到什么问题。另外,你的代码将是不必要的复杂。基本上有多个网页,所以我会去该网页,并获得电子邮件和它的联系。所以我必须成为所有人的一个代码。有没有可能获得“电子邮件”的内容?这正是我刚刚要发布的内容。不过有一个编辑,“email.getText()”必须是“emailElement.getText()”;)这正是我要发布的内容。不过有一个编辑,“email.getText()”必须是“emailElement.getText()”;)
WebElement emailElement = driver.findElement(By.xpath("//p[contains(.,'@')]"));
String email = emailElement.getText().toString();