yhy100 发表于 2018-7-2 09:03:15

python+selenium,使用By方法

selenium中是不能直接判断元素是否存在,
所以用try···except,写了一个方法判断元素的存在的方法,
想要提高模块的可维护性,所以使用by的方法识别元素:
from selenium import webdriver
from selenium.webdriver.common.by import By

def isElementExist_By(driver,value):
    try:
      driver.find_element(value)
      return True
    except:
      return False

if __name__ == '__main__':
    driver = webdriver.Firefox()
    driver.get('http://www.baidu.com')
    value = By.ID,"kw"
    s = isElementExist_By(driver,value)
    print(s)
    driver.quit()
元素存在的时候,为什么会返回false?

满庭芳 发表于 2018-7-2 11:50:32

python通过id查找元素是driver.find_element_by_id(value),语法错误了吧

yhy100 发表于 2018-7-2 13:31:28

满庭芳 发表于 2018-7-2 11:50
python通过id查找元素是driver.find_element_by_id(value),语法错误了吧

通过导入By模块可以实现对.find_element_by_id方法的整合的
.find_element(By.ID,'kw')==find_element_by_id('kw)
页: [1]
查看完整版本: python+selenium,使用By方法