python+selenium十五:CSS与Jquery

摘要:
在css中,id由#表示,class由表示。表示要定位标记并直接写入标记签名,可以使用[xxx='xxx']1.css位置1.属性位置:可以通过任何属性定位,不限于id、class、name、tag和link五个属性1.定位驱动程序。通过idelementbycss_selector(“#kw”)查找。send_Keys(“hao”)2.找到驱动程序。通过类el查找

在css中,id用#表示,class用.表示,要定位标签直接写标签名,其他属性就用[xxx='xxx']

一、css定位

1、属性定位:可以通过任意属性定位,不局限于id、class、name、tag、link这五种属性

1.通过id定位
driver.find_element_by_css_selector("#kw").send_keys("hao")

python+selenium十五:CSS与Jquery第1张

2.通过class定位
driver.find_element_by_css_selector(".s_ipt").send_keys("hao")

python+selenium十五:CSS与Jquery第2张

3.通过标签
driver.find_element_by_css_selector("input").send_keys("hao")

python+selenium十五:CSS与Jquery第3张

4.其它属性
driver.find_element_by_css_selector("[name='kw']")
driver.find_element_by_css_selector("[autocomplete='off']")

python+selenium十五:CSS与Jquery第4张

2、组合定位

1.父子关系
driver.find_element_by_css_selector("span>input")

python+selenium十五:CSS与Jquery第5张

2.组合定位
driver.find_element_by_css_selector("form.fm>span>input.s_ipt")
driver.find_element_by_css_selector("form#form>span>input#kw")

python+selenium十五:CSS与Jquery第6张

3.定位到一组,取第几个: 用“:nth-child()”

python+selenium十五:CSS与Jquery第7张

4.同时满足2个属性
[class="form-control"][name="account"]
或者:#account[class="form-control"]

python+selenium十五:CSS与Jquery第8张

5.更多

python+selenium十五:CSS与Jquery第9张

二、获取返回值
1、返回对象属性值

1.获取title值
print(driver.title)

python+selenium十五:CSS与Jquery第10张

2.获取元素属性值get_attribute(“属性”)
t = driver.find_element_by_id("su").get_attribute("属性名称")
print(t)

python+selenium十五:CSS与Jquery第11张

3.判断元素是显示还是隐藏(返回布尔值)
d = driver.find_element_by_id("su").is_displayed()
print(d)

python+selenium十五:CSS与Jquery第12张

4.获取浏览器名称
print(driver.name)

python+selenium十五:CSS与Jquery第13张

5.获取元素size
s = driver.find_element_by_id("su").size
print(s)

python+selenium十五:CSS与Jquery第14张

6.获取文本值

t = driver.find_element_by_id("su").text
print(t)

python+selenium十五:CSS与Jquery第15张

三、jquery

Jquery主要解决selenium里面的定位到元素,click失效的问题

1、Jquery语法

python+selenium十五:CSS与Jquery第16张

输入框输入jquery定位语法:$(“css selector")
如:$("#input1")
jquery语法可以学下w3school的教程:http://www.w3school.com.cn/jquery/jquery_syntax.asp

2、Jquery行为事件
jquery行为
1.发送文本语法:$(css定位).val("文本内容")
2.清空文本语法:$(css定位).val(‘ ') # 空字符串,两个单引号
3.点击按钮:$(css定位).click()

python+selenium十五:CSS与Jquery第17张

3、浏览器调试jquery

直接在控制台输入jquery回车

$('#account').val("admin");
$('[name="password"]').val("123456");
$('#submit').click()

python+selenium十五:CSS与Jquery第18张

4、元素在iframe上的问题

1.用selenium切换就用selenium定位
2.不能一半selenium切换iframe,一半用jqurey定位。
3.Jquery遇到iframe目前不太好弄

JS语法:
document.getElementById('iframe的ID').contentWindow.document.getElementById('元素的ID')

免责声明:文章转载自《python+selenium十五:CSS与Jquery》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇[家里蹲大学数学杂志]第328期詹兴致矩阵论习题参考解答JavaScript 如何压缩目录并上传?下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

CSS变量variable

前面的话 一直以来,CSS中是没有变量而言的,要使用 CSS 变量,只能借助 SASS 或者 LESS 这类预编译器。新的草案发布之后,直接在 CSS 中定义和使用变量不再是幻想了。本文将详细介绍CSS变量variable 基本用法 CSS 变量是由CSS作者定义的实体,其中包含要在整个文档中重复使用的特定值。使用自定义属性来设置变量名,并使用特定的var...

jQuery的属性操作

jquery的属性操作模块分为四个部分:html属性操作,dom属性操作,类样式操作和值操作 html属性操作:是对html文档中的属性进行读取,设置和移除操作。比如attr()、removeAttr() DOM属性操作:对DOM元素的属性进行读取,设置和移除操作。比如prop()、removeProp() 类样式操作:是指对DOM属性className...

CSS页面渲染优化属性will-change

前面的话   当我们通过某些行为(点击、移动或滚动)触发页面进行大面积绘制的时候,浏览器往往是没有准备的,只能被动使用CPU去计算与重绘,由于没有事先准备,应付渲染够呛,于是掉帧卡顿。而CSS属性will-change为web开发者提供了一种告知浏览器该元素会有哪些变化的方法,这样浏览器可以在元素属性真正发生变化之前提前做好对应的优化准备工作。这种优化可以...

css3 背景渐变

在没有了解css也可以做背景渐变以前,我都是通过PS一张背景渐变的图片来应用到自己所做的网页中。然而,在前不久我了解到css3也可以做背景渐变后,想要做背景渐变的效果就很容易了许多,下面是一些css3做背景渐变的方法。 一.线性渐变 //自上而下的线性渐变div{ 400px; height:100px; padding:5px; border:1px s...

高清屏概念解析与检测设备像素比的方法

前言 做移动端h5开发很久了,从开始入行到现在。很多知识和工具都是在用前辈留下的遗产,都没有深入的研究过原因,了解为什么要这么去做。 也许自己也是过了交给自己做什么就做什么的阶段了。在国庆节有一个大块的时间,把最近看到的知识总结一下,也算是对这方面的知识划上一个句号。想想着实把国庆节过成了劳动节,没办法,自己就是这样的一个人,“应该去做的,而且有能力做的...

jQuery LigerUI 插件介绍及使用之ligerGrid

一,简介 ligerGrid的功能列表: 1,支持本地数据和服务器数据(配置data或者url) 2,支持排序和分页(包括Javascript排序和分页) 3,支持列的“显示/隐藏” 4,支持明细行(表格内嵌) 5,支持汇总行 6,支持单元格模板 7,支持编辑表格(ligerGrid的一个特色,需要其他表单插件的支持) 8,支持树表格(待加入) 8,支持分...