如何查找页面上是否存在文本

use*_*124 22 java selenium selenium-webdriver

如果文本存在,则单击" xyz否则"单击abc.

我正在使用以下if声明:

if(driver.findElement(By.xpath("/html/body/div[2]/div/div/div/div/div/div/table/tbody/tr[6]/td[2]")).isDisplayed())
{    
    driver.findElement(By.linkText("logout")).getAttribute("href");          
} else {          
    driver.findElement(By.xpath("/html/body/div/div/div/a[2]")).click();
}
Run Code Online (Sandbox Code Playgroud)

脚本失败,并显示以下错误消息:

Unable to locate element: {"method":"xpath","selector":"/html/body/div[2]/div/div/div/div/div/div/table/tbody/tr[6]/td[2]"}
Run Code Online (Sandbox Code Playgroud)

Man*_*dan 30

试试这段代码:

以下代码用于检查整个网页中的文本存在.

if(driver.getPageSource().contains("your Text"))
{
    //Click xyz
}

else
{
    //Click abc
}
Run Code Online (Sandbox Code Playgroud)

如果要检查特定Web元素上的文本

if(driver.findElement(By.id("Locator ID")).getText().equalsIgnoreCase("Yor Text"))
{
    //Click xyz
}

else
{
    //Click abc
}
Run Code Online (Sandbox Code Playgroud)


Kv.*_*mar 1

这里我们可以使用 python web 驱动程序来使用 try , except 函数。见下面的代码

webtable=driver.find_element_by_xpath("xpath value")
print webtable.text
try:
   xyz=driver.find_element_by_xpath(("xpath value")
   xyz.click()

except:
   abc=driver.find_element_by_xpath(("xpath value")
   abc.click()
Run Code Online (Sandbox Code Playgroud)