Получение неожиданной ошибки TypeError при попытке найти элемент на странице по тексту - PullRequest
0 голосов
/ 14 декабря 2018

Я использую функцию ожидания, чтобы Selenium производил поиск присутствия элемента на странице по его тексту, прежде чем он продолжит предпринимать действия.Я пытаюсь передать текст, который я ищу, в мою функцию, однако я продолжаю получать сообщение «TypeError: объект str не вызывается», что странно, потому что я ищу строку!Я перепробовал все, что мог придумать, даже избежать последовательности, но, похоже, ничто не заставляет его работать.Пожалуйста, найдите мой код ниже:

self.webdriver_wait(action = 'find_text', keys_to_pass = 'Financial Documents')

def webdriver_wait(self, selector = '#body', action='', keys_to_pass=''):
    try:
            WebDriverWait(self.browser, 240).until(EC.presence_of_element_located((By.XPATH("//*[contains(text(), \' + str(keys_to_pass) + \'')]")))) 

1 Ответ

0 голосов
/ 14 декабря 2018

By.XPATH это не метод, а простая строка (By.XPATH == 'xpath'), вам нужно использовать ее, как показано ниже:

WebDriverWait(self.browser, 240).until(EC.presence_of_element_located((By.XPATH, "//*[contains(text(), '%s')]" % keys_to_pass))) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...