0

I'm trying to click that button, I've tried several ways and I couldn't.

bottom id = edita_cliente

HTML:

<div class="card mb-3" style="color: #ace;">
                <div class="card-header">
                        <div class="card-title" style="text-align: left; font-size: 16px;margin: 5px;">
                            <div style="display: inline-block; width: 100px">
                            <i style="padding-left: 15px; cursor: pointer;" id="novo_cliente" class="tooltipped fas fa-plus-circle" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="Novo cliente"></i>
                            <i style="padding-left: 15px; cursor: pointer;" id="edita_cliente" class="tooltipped far fa-edit" data-toggle="tooltip" data-placement="bottom" title="" data-valor="203739" data-original-title="Editar cliente"></i>
undetected Selenium
  • 183,867
  • 41
  • 278
  • 352

1 Answers1

1

To click() on a element you need to induce WebDriverWait for the element_to_be_clickable() and you can use either of the following locator strategies:

  • Using CSS_SELECTOR:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "i#edita_cliente[data-original-title='Editar cliente']"))).click()
    
  • Using XPATH:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//i[@id='edita_cliente' and @data-original-title='Editar cliente']"))).click()
    
  • Note: You have to add the following imports :

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    
undetected Selenium
  • 183,867
  • 41
  • 278
  • 352