selenium(python)定位(查找)元素的方法小结
2017-10-14 14:14
901 查看
有多种方法可以在网页中定位元素。你可以为你的项目选择最合适的那一个。selenium提供以下方法用于在网页中定位元素。
如果匹配到多个元素将默认返回第一个。
find_element_by_id(属性)
find_element_by_name(属性)
find_element_by_xpath(根据xpath语法)
find_element_by_link_text(根据链接文字定位)
find_element_by_partial_link_text(同上模糊定位)
find_element_by_tag_name(标签名)
find_element_by_class_name(类名)
find_element_by_css_selector(根据css语法)
查找(定位)多个元素(以下方法将会返回列表):
使用方法同定位单个元素,不同的是返回匹配的多个元素的列表。
find_elements_by_name
find_elements_by_xpath
find_elements_by_link_text
find_elements_by_partial_link_text
find_elements_by_tag_name
find_elements_by_class_name
find_elements_by_css_selector
除了以上给出的公共方法,还有2个私有方法也许对网页中的元素定位有用。这两个方法是find_element 和 find_elements。
举个栗子:
以下是By类可用的属性:
翻译自selenium官网有改动
还可以通过javascript语法来定位,返回类型就是单个HTML元素或者数组。
举个栗子:
如果匹配到多个元素将默认返回第一个。
find_element_by_id(属性)
find_element_by_name(属性)
find_element_by_xpath(根据xpath语法)
find_element_by_link_text(根据链接文字定位)
find_element_by_partial_link_text(同上模糊定位)
find_element_by_tag_name(标签名)
find_element_by_class_name(类名)
find_element_by_css_selector(根据css语法)
查找(定位)多个元素(以下方法将会返回列表):
使用方法同定位单个元素,不同的是返回匹配的多个元素的列表。
find_elements_by_name
find_elements_by_xpath
find_elements_by_link_text
find_elements_by_partial_link_text
find_elements_by_tag_name
find_elements_by_class_name
find_elements_by_css_selector
除了以上给出的公共方法,还有2个私有方法也许对网页中的元素定位有用。这两个方法是find_element 和 find_elements。
举个栗子:
from selenium.webdriver.common.by import By driver.find_element(By.XPATH, '//button[text()="Some text"]') driver.find_elements(By.XPATH, '//button'
以下是By类可用的属性:
ID = "id" XPATH = "xpath" LINK_TEXT = "link text" PARTIAL_LINK_TEXT = "partial link text" NAME = "name" TAG_NAME = "tag name" CLASS_NAME = "class name" CSS_SELECTOR = "css selector"
翻译自selenium官网有改动
还可以通过javascript语法来定位,返回类型就是单个HTML元素或者数组。
webdriver.execute_script("javascript code")
举个栗子:
from selenium import webdriver driver = webdriver.Firefox() driver.execute_script("document.getElementById('username')")
相关文章推荐
- Selenium常见元素定位方法和操作的学习介绍-python爬虫
- [python爬虫] Selenium常见元素定位方法和操作的学习介绍
- [python爬虫] Selenium常见元素定位方法和操作的学习介绍
- python+selenium 定位元素异常类型及解决方法
- Python+Selenium xpath 定位遇到相同元素时的解决方法父节点找子节点
- selenium python (二) 元素定位方法
- Python使用Selenium测试WebApp在定位元素和使用元素属性报的莫名其妙错误的终极解决方法
- [python爬虫] Selenium常见元素定位方法和操作的学习介绍
- Python+Selenium的元素定位方法(xpath)
- selenium+python 元素定位方法
- [python爬虫] Selenium常见元素定位方法和操作的学习介绍
- python+selenium:不会定位元素----使用firepath工具
- python封装安卓查找元素方法V1.0
- Selenium示例集锦--常见元素识别方法、下拉框、文本域及富文本框、鼠标操作、一组元素定位、弹窗、多窗口处理、JS、frame、文件上传和下载
- Selenium常见元素定位方法和操作的学习介绍
- 总结Selenium自动化测试方法(三)WebDriver定位元素方法
- Selenium2: web元素定位方法笔记
- Selenium(一)元素定位的方法
- selenium----简单的页面元素查找方法
- Selenium2自动化测试-一种低效但有效的web元素定位方法