使用getPageSource检查网页上是否存在某些文本。我得到错误对象没有属性getPageSource

时间:2015-05-19 16:00:18

标签: python selenium selenium-webdriver webdriver

我正在尝试验证某些文字,例如使用Python,Webdriver中的driver.getPageSource在网页上的“test001”。 我得到的错误对象没有属性'getPageSource':

Traceback (most recent call last):
  File "C:\Users\riaz.ladhani\PycharmProjects\Selenium Webdriver\ClearCore \TestCases\AdministrationPage_TestCase.py", line 32, in test_add_Project
    administration_page.add_project()
  File "C:\Users\riaz.ladhani\PycharmProjects\Selenium Webdriver\ClearCore \Pages\admin.py", line 43, in add_project
    test = self.driver.getPageSource
AttributeError: 'WebDriver' object has no attribute 'getPageSource'

看过其他人的帖子有类似的问题。他们的回复是使用getPageSource。 我不知道为什么我会收到错误。一些帮助表示感谢,谢谢。

我的代码段是:

class AdministrationPage(BasePage):

    def is_project_text_present(self, text):
        #return str(text) in self.driver.getPageSource
        try:
            project_list_test = self.driver.getPageSource
        except NoSuchElementException, e:
            return False
        return "test001" in text # check if the project title text test001 is in the page, return true if it is

class AdministrationPage_TestCase(unittest.TestCase):

    try: administration_page.is_text_present("test001")
        except AssertionError as e: self.verificationErrors.append(str(e))

1 个答案:

答案 0 :(得分:4)

对我来说似乎是一个语法错误,它应该是page_source而不是getPageSource。请参阅doc

尝试

def is_project_text_present(self, text):
        #return str(text) in self.driver.page_source
        try:
            project_list_test = self.driver.page_source
        except NoSuchElementException, e:
            return False
        return "test001" in text # check if the project title text test001 is in the page, return true if it is

但是,我认为抓住整页源来测试单个文本并不是一个好主意。只需查找目标元素并测试元素是否包含您要查找的文本