У меня есть выпадающее меню «Выбор рабочей области», ниже приведен xpath (с использованием firebug) и HTML-код для этого.Проблема в том, что xpath постоянно меняется.Как параметризовать xpath для этого?Например, с одним xpath мне нужно написать функцию, которую можно использовать для вызова другого.
xpath -> .//*[@id='step-content-2']/div/md-content/form/div/div[1]/div[1]/md-card[1]/md-card-content/form-field-panel/div/ul/li[2]/div/div/div/span/span/span[1]
html -> <span class="k-input" unselectable="on">Select Work Area...</span>
Раскрывающийся список содержит 4 имени, ниже указаны его xpath и html
xpath -> html/body/div[3]/div/div[3]/ul/li[1]
html -> <li class="k-item" data-offset-index="0" unselectable="on" role="option" tabindex="-1">Cheyenne</li>
xpath -> html/body/div[3]/div/div[3]/ul/li[2]
html -> <li class="k-item" data-offset-index="1" unselectable="on" role="option" tabindex="-1">Pueblo</li>
и еще 2.
Мой код:
def _selectWorkArea(self, text):
self.ui.driver.find_element_by_xpath('//li[contains(text()=\'{}\')'.format(text)).click()
def selectName(self, name):
self._selectWorkArea(name)