首页 > 编程语言 > 详细

python-selenium笔记之元素定位

时间:2020-02-11 00:15:20      阅读:112      评论:0      收藏:0      [点我收藏+]

selenium用于web应用程序的自动化测试工具,支持多种浏览器、多种脚本语言编写及录制的工具。

测试过程可以使用python+selenium进行做UI界面自动化,UI界面自动化一个基础核心是元素定位。

selenium提供了单元素定位和多元素定位,2种方式都有8种元素定位方式:

单元素定位方法:

find_element_by_id:通过元素id属性定位  (find_elements_by_id:多元素定位,返回是列表定位位置,默认定位到第一个,索引是从0开始,其他几种多元素定位类似)
find_element_by_name:通过元素name属性定位
find_element_by_xpath:通过元素xpath定位
find_element_by_tag_name:通过元素标签名属性定位
find_element_by_link_text:通过元素文本链接属性定位
find_element_by_partial_link_text:通过元素部分文本链接属性定位
find_element_by_class_name:通过元素类属性名定位
find_element_by_css_selector:通过元素css定位

多元素定位方法:
find_elements_by_id:通过元素id属性定位,多元素定位,返回是列表定位位置,默认定位到第一个,索引是从0开始,其他几种多元素定位类似
find_elements_by_name:通过元素name属性定位
find_elements_by_xpath:通过元素xpath定位
find_elements_by_tag_name:通过元素标签名属性定位
find_elements_by_link_text:通过元素文本链接属性定位
find_elements_by_partial_link_text:通过元素部分文本链接属性定位
find_elements_by_class_name:通过元素类属性名定位
find_elements_by_css_selector:通过元素css定位
下面看一下实例:
定位百度输入框,下面是对应的html代码

技术分享图片

 

 

1 from selenium import webdriver
2 from selenium.webdriver.common.by import By
3 
4 driver = webdriver.Chrome()
5 driver.find_element_by_id("kw")
6 driver.find_element_by_name("wd")
7 driver.find_element_by_xpath(//*[@id="kw"])
8 driver.find_element_by_css_selector(#kw)
9 driver.find_element_by_class_name(s_ipt)

定位新闻链接:

技术分享图片

 

 

1 driver.find_element_by_link_text("新闻")
2 driver.find_element_by_partial_link_text()

tag_name标签名称定位一般用于定位多元素定位

通过input标签查找百度输入框,返回是列表,索引是从0开始

1 s = driver.find_elements_by_tag_name("input")
2 print(s[7].get_attribute(id))

 



 

 

 






python-selenium笔记之元素定位

原文:https://www.cnblogs.com/heertong/p/12293131.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!