передача данных из фрейма данных в python selenium xpath - PullRequest
0 голосов
/ 17 октября 2019

У меня есть xpath, в который мне нужно добавить переменные данные:

browser.find_element_by_xpath("//span[contains(@class,'urLblPadding') and contains(text(),'"+notif_status_name+"')]").click()

Если я передам данные напрямую, то это сработает. Иначе я получаю ошибку. Я проверил данные из dataframe. Он показывает только правильные данные.

Ошибка:

File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 394, in find_element_by_xpath
    return self.find_element(by=By.XPATH, value=xpath)

Я пробовал это:

browser.find_element_by_xpath("//span[contains(@class,'urLblPadding')[contains(text(),'%s')]" % notif_status_name']).click()

Я получил ошибку:

SyntaxError: Failed to execute 'evaluate' on 'Document': The string '//span[contains(@class,'urLblPadding')[contains(text(),'0    UYTY
Name: notif_status, dtype: object')]' is not a valid XPath expression.

Здесь UYTY это то, что я хочу. Но это добавляет 0 UYTY

1 Ответ

1 голос
/ 17 октября 2019

Ваш синтаксис неверен. попробуй:

browser.find_element_by_xpath("//span[contains(@class,'urLblPadding')[contains(text(),'%s')]" % notif_status_name).click()

проблема в том, что ты перепутал с кавычками.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...