进入网站,按F12,点击弹出框右上角的位置的小箭头,然后移到需要定位的元素上,点击一下即可定位元素

(1)  id定位(有id才可以定位)
wd.find_element_by_id('') #输入id属性后面的值 注意有
wd.find_elements_by_id('') #多了个s,表示指定元素不止一个

(2)  name定位(有anme才可以定位)
wd.find_element_by_name('') #输入name属性后面的值
wd.find_elements_by_name('') #多了s,表示制定元素不止一个

(3)  class定位(有class才可以定位)
wd.find_element_by_class_name('') #输入class等号后面的值
wd.find_elements_by_class_name('') #多了s,表示制定元素不止一个

(4)  标签定位(每个元素的首个单词,就是标签,只有代码特别少的才会用)'''
wd.find_element_by_tag_name('') #输入单词
wd.find_elements_by_tag_name('') #多了s,表示制定元素不止一个

(5)  逐层定位(先定位上一层元素,赋值,然后再定位下一层元素)(可以加s)'''
wd1=wd.find_element_by_name('') #定位上一层元素,然后赋值. 上一层元素可以用各种方法完成,
wd1.find_element_by_tag_name('')

(6)  文本定位和部分文本定位(适合有文字描述的按钮或者下拉框等)'''
wd.find_element_by_link_text('') #输入文本
wd.find_element_by_partial_link_text('') #输入部分文本即可定位

'''路径定位(xpath)'''
#找到元素,右键复制xpath路径
wd.find_element_by_xpath('') #粘贴路径即可
#不用copy,手动输入方法
wd.find_elements_by_xpath('//*[@属性="值"]') # //:所有跟目录, *:所有标签 @:固定的 属性="值"(值需要引号概括)
wd.find_elements_by_xpath('//标签/标签[@属性="值"]') #需要写两个标签,上级标签和本级标签
wd.find_element_by_xpath('/html/body/div/div[4]/div[2]/div/form/span/input') #直接写路径

"""css定位方法(祖孙关系用空格(跳级))(父子关系用>(逐层))(兄弟关系用~(同级))(邻居关系用+(同级))"""
wd.find_element_by_css_selector("a[href='index.php']").click() #标签加属性定位(单属性直接定位)
wd.find_element_by_css_selector("a[href='index.php'][class='cur']").click() #(多属性直接定位)
wd.find_element_by_css_selector("body a").click() #(祖孙关系定位)
wd.find_element_by_css_selector("body>div>a").click() #(父子关系,可以逐层定位)
wd.find_element_by_css_selector("a~a").click() #兄弟关系定位
wd.find_element_by_css_selector("a+a").click() #邻居关系定位
"""class用.表示 id用#表示 """

selenium元素定位之 八大元素定位的更多相关文章

  1. selenium环境配置和八大元素定位

    一.环境配置 1.selenium下载安装 安装一:pip install selenium(多数会超时安装失败) 安装二:pip install -i https://pypi.tuna.tsing ...

  2. Java + Selenium + WebDriver八大元素定位方式

    UI自动化测试的第一步就是进行元素定位,下面给大家介绍一下Selenium + WebDriver的八大元素定位方式.现在我们就以百度搜索框为例进行元素定位,如下图: 一.By.name() Java ...

  3. selenium八大元素定位方法

    1.ID定位 可以根据元素的id来定位属性,id是当前整个HTML页面中唯一的,所以可以通过id属性来唯一定位一个元素,是首选的元素定位方式.(动态ID不做考虑) # 导入webdriver和By f ...

  4. Python+Selenium定位不到元素常见原因及解决办法(报:NoSuchElementException)

         在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况(报selenium.common.exceptions.NoSuchElementException ...

  5. Selenium:WebDriver简介及元素定位

    参考内容:官方API文档,下载链接:http://download.csdn.net/detail/kwgkwg001/4004500 虫师:<selenium2自动化测试实战-基于python ...

  6. Python3 Selenium定位不到元素常见原因及解决办法

    Python3 Selenium定位不到元素常见原因及解决办法 一.问题描述 在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况: 报错信息: no such e ...

  7. selenium自动化之定位多个元素

    前面我们讲的都是如何定位单个元素,下面讲下怎么去定位多个元素,并且输出文本. 以百度为例:获取标红的这一组元素的文本 这里我用到的是xpath来定位的://div[@id="u1" ...

  8. Selenium with Python 003 - 页面元素定位

    WebUI自动化,首先需要定位页面中待操作的元素,然后进行各种事件操作,这里我们首先介绍Selenium Python 如何定位页面元素,WebDriver 提供了一系列的方法. 定位单个页面元素(返 ...

  9. selenium定位不到元素

    selenium定位不到元素时,网上大部分查到都是iFrame的切换问题,然后是多窗口.句柄的处理问题, 在初学是遇到定位不到元素,一直在找上面的问题,发现都不是上面的问题, 后来才发现是页面刷新的问 ...

随机推荐

  1. flex mx:TabNavigator进行选项卡切换,需要进行交互时。发生Error #1009错误

    当需要进行 mx:TabNavigator选项卡进行切换时,需要进行交互,然后却报了"TypeError: Error #1009: 无法访问空对象引用的属性或方法."错误,产生这 ...

  2. Https:创建部署SSL证书进行双向认证

    一.前言 建立客户端与服务器的Https的连接需要证书进行双向验证后,才可访问.   二.证书类型 不同数字证书部署在服务器上后,用户浏览器访问网站时,展示如下: 1.无证书时 显示不安全标识. 2. ...

  3. 在Ubuntu 16.04中搭建RobotFramework环境

    1.搭建RF环境 2.安装RF相关库 3.查看RF case 4.设置环境变量 相关知识点:pip  --proxy=http://xx.xx.xx.xx:xx install 包名,使用pip的-- ...

  4. git rebase(变基)操作

    1.rebase(变基)操作 注意事项:rebase 改变分支的根源,绝对不要在与其他人共享的分支上进行操作rebase黄金法则:绝不要在公共的分支上使用它! 1.1git merge 与 git r ...

  5. java基础---java8 新特性

    1. 函数式接口 函数式接口主要指只包含一个抽象方法的接口,如:java.lang.Runnable(java1.0).java.util.Comparator接口(java1.4)等. Java8提 ...

  6. Pandas高级教程之:稀疏数据结构

    目录 简介 Spare data的例子 SparseArray SparseDtype Sparse的属性 Sparse的计算 SparseSeries 和 SparseDataFrame 简介 如果 ...

  7. [刘阳Java]_纯CSS代码实现内容过滤效果

    继续我们技术专题课,我们今天给大家带来的是一个比较酷炫的"纯CSS代码实现内容过滤效果",没有加入任何JS的效果.全部都是应用CSS3的新增选择器来实现的.先看效果截图 实现思路 ...

  8. C#/.NET/.NET Core学习视频汇总(持续更新ing)

    前言: 之前有很多小伙伴在我的公众号后台留言问有没有C#/.NET/.NET Core这方面相关的视频推荐,我一般都会推荐他们去B站搜索一下.今天刚好有空收集了网上一些比较好的C#/.NET/.NET ...

  9. div填满页面剩余空间的方法

    想让div填满页面剩余空间,最简易的方式还是靠提前的布局. 这里提供两种方法: (1)利用 height 样式的%比例设置布局 <!DOCTYPE html> <html lang= ...

  10. Vulnhub -- DC1靶机渗透

    信息收集 开启了 22端口,ssh服务 80,http服务 111,RPC服务 先观察80端口 发现采用的是Drupal的cms 目录爆破: 但是,没有找到可以直接利用的点 登录的页面进行SQL注入即 ...