поиск xpath с начинается с и заканчивается на

#selenium #xpath

#селен #xpath — путь

Вопрос:

Следуя xpath, который я скопировал из браузера (проверить)

 # // *[ @ id = "customize-coverage--customize-your-quote--propertyDamage-1--info-title"]
  

Я пытаюсь прочитать элемент, но он просто не может найти его с помощью следующего xpath

Могу ли я в любом случае найти вышеупомянутый элемент с помощью selenium? Пожалуйста, помогите. Я не уверен, почему belwo не работает, чтобы найти веб-элемент по драйверу

 return self.page_element(By.XPATH,
                                 '//*[starts-with(@id,"customize-coverage--customize-your-quote--propertyDamage-") and ends-with(@id,"-info-title")]/span').text
  

Я также пытался использовать contains и regex. Кажется, ничего не работает.

Примечание: я использую python

Комментарии:

1. Общий HTML-код для одного и того же

Ответ №1:

ends-with() требуется XPath 2.0, и хотя ему уже почти 14 лет, Selenium еще не реализует его. Вы должны использовать комбинацию substring() и string-length() .