How to extract data from the following html?

To extract the text Fiber är beställd till adressen. Tjänsterna kan du beställa när installationen är färdig. just from the 1st span only you need to induce WebDriverWait for the text to be present in the element and you can use the following solution:

  • Imports:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    
  • Line of code:

    #Option 1 - text_to_be_present_in_element and CSS_SELECTOR
    element = WebDriverWait(driver, 20).until(EC.text_to_be_present_in_element((By.CSS_SELECTOR, "div.infoMessageInner>p>span.ng-binding"), "Fiber är beställd till adressen"))
    #Option 2 - text_to_be_present_in_element_value and CSS_SELECTOR
    element = WebDriverWait(driver, 20).until(EC.text_to_be_present_in_element_value((By.CSS_SELECTOR, "div.infoMessageInner>p>span.ng-binding"), "Fiber är beställd till adressen"))
    #Option 3 - text_to_be_present_in_element and XPATH
    element = WebDriverWait(driver, 20).until(EC.text_to_be_present_in_element((By.XPATH, "//div[@class='infoMessageInner']/p/span[@class='ng-binding']"), "Fiber är beställd till adressen"))
    #Option 4 - text_to_be_present_in_element_value and XPATH
    element = WebDriverWait(driver, 20).until(EC.text_to_be_present_in_element_value((By.XPATH, "//div[@class='infoMessageInner']/p/span[@class='ng-binding']"), "Fiber är beställd till adressen"))
    
  • Text will be:

    Fiber är beställd till adressen. Tjänsterna kan du beställa när installationen är färdig.