【问题标题】:Clicking a button image using selenium and Python使用 selenium 和 Python 单击按钮图像
【发布时间】:2022-02-13 00:32:44
【问题描述】:

我正在尝试单击该按钮,我尝试了多种方法,但都失败了。

底部 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>

【问题讨论】:

    标签: python selenium xpath css-selectors webdriverwait


    【解决方案1】:

    在一个元素上click(),你需要为element_to_be_clickable()诱导WebDriverWait,你可以使用以下locator strategies之一:

    • 使用CSS_SELECTOR

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

      WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//i[@id='edita_cliente' and @data-original-title='Editar cliente']"))).click()
      
    • 注意:您必须添加以下导入:

      from selenium.webdriver.support.ui import WebDriverWait
      from selenium.webdriver.common.by import By
      from selenium.webdriver.support import expected_conditions as EC
      

    【讨论】:

    • 不是,我刚试过
    猜你喜欢
    • 2018-08-22
    • 2021-01-31
    • 2020-08-06
    • 2017-04-22
    • 2016-05-29
    • 1970-01-01
    • 2013-11-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多