seleniumpython中没有"get text() .contains ()"

There is no "get text() .contains ()" in selenium python

下面在 java 中工作得很好,但尝试将其转换为 Python 代码(selenium python 中没有 "get text() .contains ()" ):

if ((driver.findElement(By.xpath("//*[@id='payload']"))).getText().contains("report")){
           Assert.assertEquals(driver.findElement(By.xpath("//*       [@id='payload']")).getText().contains("<statusCode>60</statusCode>"),true);
      report=true; 
           System.out.println("Successful update executed,PASS");
      }

在 Python 中,您需要 text 属性,而不是 getText() 方法。

你可以这样做:

if 'report' in driver.findElement(By.xpath("//[@id='payload']"))).text:
    # Do something

text 属性是一个字符串,因此您可以在其中搜索特定字符或子字符串。

对于python你可以使用文本方法如下:-

fetch_text = driver.find_element_by_xpath("//[@id='payload']").text
if "report" in fetch_text:
    # do your stuff

if "report" in  driver.find_element_by_xpath("//[@id='payload']").text:
    # do your stuff

正如其他人已经告诉您可以使用的那样

driver.find_element_by_xpath("//[@id='payload']").text

或者如果您没有得到任何有用的值,您可以尝试:

driver.find_element_by_xpath("//[@id='payload']").get_attribute(your attribute that is present in the html)

可以是href、value、text等...