Selenium定位一组元素

2019-10-21 16:45:58 浏览数 (1)

写在前面




在此之前写过一篇文章关于Selenium常用的8种元素基本定位方式。

点击文字链接跳转详情:Selenium元素定位

文末也有关于如何定位一组元素的方法。不过有的小伙伴反映不方便查找,现把该部分内容单独列出。

Selenium定位一组元素




WebDriver提供了8种方法用于定位元素,同时还提供了8种用于定位一组元素的方法。

代码语言:javascript复制
find_elements_by_id()
find_elements_by_name()
find_elements_by_class_name()
find_elements_by_tag_name()
find_elements_by_link_text()
find_elements_by_partial_link_text()
find_elements_by_xpath()
find_elements_by_css_selector()

复数定位方式每次取到的都是具有相同类型属性的一组元素,所以返回的是一个list队列。接下来通过一个案例演示一下如何使用以上方法定位一组元素:

代码语言:javascript复制
#find_elements.py
#www.testclass.cn
#Altumn

from time import sleep
from selenium import webdriverdriver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("https://www.baidu.com")Search_text="testclass.cn"
driver.find_element_by_id("kw").send_keys(Search_text)
driver.find_element_by_id("su").click()
sleep(1)
# 定位一组元素,这里通过定位搜索结果的标题;
elements = driver.find_elements_by_css_selector('div>h3>a')
# 循环遍历出每一条搜索结果的标题
for i in elements:
   print(i.text)driver.quit()

执行结果如下所示:

代码语言:javascript复制
PS C:UsersWangXiaoDesktoppython> cd 'c:UsersWangXiaoDesktoppython'; ${env:PYTHONIOENCODING}='UTF-8'; ${env:PYTHONUNBUFFERED}='1'; & 'C:UsersWangXiaoAppDataLocalProgramsPythonPython36python.exe' 'c:UsersWangXiao.vscodeextensionsms-python.python-2018.12.1pythonFilesptvsd_launcher.py' '--default' '--client' '--host' 'localhost' '--port' '53612' 'c:UsersWangXiaoDesktoppythonfind_elements.py'
DevTools listening on ws://127.0.0.1:12406/devtools/browser/f080d3e5-4ad1-4677-b5f0-c6e574eeff29软件测试testclass.cn - 软件测试技术分享
Katalon Studio录制回放功能使用介绍 – 软件测试testclass.cn
Katalon Studio元素抓取功能Spy Web介绍 – 软件测试testclass.cn
Katalon Studio操作界面详细说明 – 软件测试testclass.cn
一款超好用的Http抓包工具:Fiddler – 软件测试testclass.cn
TestClass - 教程中心 - 阿里云
好课网
Python笔记:程序设计IPO模式 – 软件测试testclass.cn
软件测试人:给自己一个梦想! – 软件测试testclass.cn
Katalon Studio一款免费的自动化测试工具 – 软件测试testclass.cn

小节




定位一组元素的方法与定位单个元素的方法类似,唯一的区别是在element后面多了一个s表示复数。 以上内容为如何定位一组元素。

如果在日常的自动化测试中不知道如何更系统的进行元素定位,可以参考另一篇文章:Selenium必须掌握的元素定位方法

0 人点赞