如何在python中使用selenium-webdriver定位文本框

问题描述 投票:-2回答:1

这是文本框的代码:

<form>
    <input autocomplete="off" id="number" name="number" type="tel" aria-describedby="error-for-number tooltip-for-number" data-current-field="number" data-fillr-id="424069765" data-fillr="bound" style="padding: 8px 10px; font-size: 14px; font-family: -apple-system, BlinkMacSystemFont, &quot;San Francisco&quot;, &quot;Segoe UI&quot;, Roboto, &quot;Helvetica Neue&quot;, sans-serif;">
</form>

顺便说一句,当我尝试通过ID或名称访问它时,它不起作用:

browser.find_element_by_id('number')
browser.find_element_by_name('number')
python selenium xpath css-selectors webdriverwait
1个回答
0
投票

要找到TextBox,你必须为element_to_be_clickable()引入WebDriverWait,你可以使用以下任何一个Locator Strategies

  • 使用CSS_SELECTORelement = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input#number[name='number'][type='tel']")))
  • 使用XPATHelement = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@id='number' and @name='number'][@type='tel']")))
  • 注意:您必须添加以下导入: from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC
© www.soinside.com 2019 - 2024. All rights reserved.