Я хотел бы извлечь текст диапазона, расположенный в классе SOME_CLASS_NAME
. класс SOME_CLASS_NAME
может быть не всегда доступен. Кроме того, пройдет некоторое время, прежде чем класс будет должным образом виден, если он существует.
Для этого был предложен следующий код.
Грязный обходной путь, чтобы проверить, доступен ли класс
size_len = WebDriverWait(self.browser, 20).until(EC.presence_of_element_located(
(By.XPATH, './/span[@class = "SOME_CLASS_NAME"]')))
ИЛИ
if len( self.browser.find_elements_by_xpath('.//span[@class = "SOME_CLASS_NAME"]') ) > 0 :
element =self.browser.find_elements_by_xpath( './/span[@class = "SOME_CLASS_NAME"]' )[ 0 ].text
else:
element = '0'
Хотя вышеприведенный подход работает, но я считаю очень неэффективным оценивать класс 3 раза.
Могу ли я знать, если есть способ сделать приведенный выше код более эффективным?