Как найти второе изображение, которое содержит определенный текст - PullRequest
0 голосов
/ 01 мая 2019

На сайте есть стандартное изображение, которое я могу использовать для идентификации xpath.но я хочу нажать на третье изображение, которое содержит только конкретный текст.картинка находится рядом с изображением, это прекрасно, что img и текст в одной командной строке?

  • Оригинальный рабочий код:

    driver.findElement(By.xpath("(//img[@class='s-image'])[2]")).click();
    
  • Попробуйте вставить команду содержимого, но она не работает:

    driver.findElement(By.xpath("(//img[@class='s-image'])[2] and contains(text(),'Apple MacBook Pro')")).click();
    

1 Ответ

2 голосов
/ 01 мая 2019

Вы ошиблись опцией, которая не является текстом, являющимся свойством alt для входа в xpath. Попробуйте сейчас.

driver.find_element_by_xpath("(//img[@class='s-image'][contains(@alt,'Apple MacBook Pro')])[2]").click()

ИЛИ

driver.find_element_by_xpath("(//img[@class='s-image'][starts-with(@alt,'Apple MacBook Pro')])[2]").click()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...