进入网站,按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. Kali下切换JDK版本

    Kali下自由更换JDK版本 今天在学习了一下CobaltStrike之后,打算在Kali上本地搭建一个服务器端, 查看了一下Kali的JDK配置发现版本是13.X的,然而CobaltStrike最好 ...

  2. 5.1 万 Star!不用 root 就能连接控制安卓的开源工具

    [导语]:一款在 PC 端控制安卓设备的小工具.可在 PC 和安卓设备间互通剪贴板.用电脑键盘打字.传输文件.安装程序.截图.录屏等等功能. 简介 scrcpy 可以显示并控制通过 USB (或 TC ...

  3. 38、tftp搭建

    38.1.什么是tftp: TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文 件传输的协议,提供 ...

  4. bootstrap validate 验证插件 动态添加和动态删除验证项

    //添加验证项 function addField(field, notEmptyMsg, othercon) { if (!othercon) { $("#gyssave").b ...

  5. Oracle数据库——Mybatis在一个update标签下执行多更新语句

    begin update table table1 set com1 ='1' ; update table table2 set com1 ='1' ; end;

  6. java实现遍历文件目录,根据文件最后的修改时间排序,并将文件全路径存入List集合

    package com.ultra.aliyun.control.main; import java.io.File; import java.util.ArrayList; import java. ...

  7. 构建自己的dockerfile

    一)创建自己的CentOS 构建dockerfile的原理图 Docker Hub中99%的镜像都是从FROM scratch这个基础镜像过来的.然后配置需要的软件和配置来进行构建. FROM #基础 ...

  8. 通过MMIO的方式实现VIRTIO-BLK设备(一)

    背景知识 什么是VIRTIO 使用完全虚拟化,Guest不加任何修改就可以运行在任何VMM上,VMM对于Guest是完全透明的.但每次I/O都将导致CPU在Guest模式与Host模式间切换,在I/O ...

  9. WPF教程十:如何使用Style和Behavior在WPF中规范视觉样式

    在使用WPF编写客户端代码时,我们会在VM下解耦业务逻辑,而剩下与功能无关的内容比如动画.视觉效果,布局切换等等在数量和复杂性上都超过了业务代码.而如何更好的简化这些编码,WPF设计人员使用了Styl ...

  10. SA20225394 舒蔚 高级软件工程实验总结

    [实验]: 一.编程神器Visual Studio Code 配置好Visual Studio Code这一强大而又轻量的编辑器.其中有版本控制+代码补全+自动加载依赖,并且可以根据自己的需要添加插件 ...