Python Selenium按名称查找元素

时间:2016-02-25 16:23:48

标签: python selenium selenium-webdriver ui-automation webautomation

我正在使用Python Selenium并尝试在没有ID的输入框中选择

<div class="form-group"><input type="email" class="form-control" name="quantity" placeholder="Type a quantity"></div>

inputElement = driver.find_element_by_id("quantity")

按名称选择此元素的最佳方法是什么?

3 个答案:

答案 0 :(得分:7)

find_element_by_name()方法适用于此处:

driver.find_element_by_name("quantity")

答案 1 :(得分:0)

我已经使用这种方法多次从元素中收集属性:

for i in browser.find_elements_by_class_name("form-control"):
    print i.get_attribute("name")

答案 2 :(得分:0)

首选使用显式等待:

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


driver = webdriver.Chrome()
wait = WebDriverWait(driver, 5)
input_element = wait.until(EC.presence_of_element_located((By.NAME, 'quantity')))

有关等待的更多信息here