selenium元素定位

Selenium 八种元素定位方法:

  id定位: find_element_by_id()

  name定位: find_element_by_name()

  class定位:find_element_by_class_name()

  tag定位:find_element_by_tag_name()

  link定位:find_element_by_link_text()

  partial_link定位:find_element_by_partial_link_text()

  CSS定位:find_element_by_css_selector()

  xpath定位:find_element_by_xpath()

 

selenium定位动态id元素:
做web自动化时,常常会碰到需要定位的元素id不是固定的,无法通过id进行定位,比如姓名+时间+学号这样的动态ID元素。

方法:

1、相对路径的xpath

2、用xpath的属性(包括部分属性)来定位

3、用css,name等其他方式进行定位

 

 

 

selenium的三种等待方式:

  强制等待:time.sleep()

      直接等待N秒

  隐式等待   driver.implicitly_wait(30) 

      时间内,网页加载完成,执行下一步,若网页加载没有全部完成,时间到了执行下一步

  显示等待:

     超时时间为30秒,每0.2秒检查1次,直到class="tt"的元素出现 

    text = WebDriverWait(driver,30,0.5).until(lambda x:x.find_element_by_css_selector("伟哥")).text

 

posted @ 2021-09-06 09:12  坏虫  阅读(116)  评论(0编辑  收藏  举报