• selenium元素定位踩的坑


     想定位立即注册的元素,在定位时总报错找不到元素:

    先想了是不是这个弹框在ifarm里所以定位不到,所以用了:driver.switch_to.farme(driver.find_element_by_xpath("/html/body/div[4]/div[2]/div[2]/div/div/div/div/div/div[3]/a"))

    最后试了会不会是元素没加载出来,所以用了隐形等待implicitly_wait(),解决了问题

    心得:一定要看上下级关系,是否在ifarm,DOM树是写的很明白

    (二)在做selenium自动化的时候,在输入元组参数时少加个*,导致一直报错,在作为参数时一定要加*

    报错代码:

    def FindElement(self,*loc):
    #注意,以下入参为元祖的元素,需要加*
    try:
    ele=WebDriverWait(self.driver,self.outtime,0.5).until(EC.presence_of_element_located(loc))
    return ele
    except Exception as e:
    print("未找到元素,错误为{0}".format(e))

     正确代码:

    def FindElement(self,*loc):
    #注意,以下入参为元祖的元素,需要加*
    try:
    ele=WebDriverWait(self.driver,self.outtime,0.5).until(EC.presence_of_element_located(*loc))
    return ele
    except Exception as e:
    print("未找到元素,错误为{0}".format(e))
  • 相关阅读:
    第二阶段冲刺第四天
    第二阶段冲刺第三天
    第二阶段冲刺第二天
    第二阶段冲刺第一天
    软件工程结对作业01(补充)
    软件工程概论个人总结
    梦断代码阅读笔记06
    梦断代码阅读笔记05
    构建之法阅读笔记04
    构建之法阅读笔记01
  • 原文地址:https://www.cnblogs.com/zhifeiji822/p/13085710.html
Copyright © 2020-2023  润新知