注意:精准定位元素必须找到唯一值,例如id,或者多层class定位出的唯一元素值,否则极有可能定位不准,执行失败
网页按F12可调出网页代码,点击代码窗口按control+F使用代码查找框,可输入id,css,xpath定位元素
- css定位:div#app
即:标签#XX
- xpath定位://div[@id="app"]
即://标签[@id="XX"]
- css定位:div.app-wrapper.openSidebar
即:标签.XXX.XXX(class包含多个字符串,空格用.替代)
- xpath定位://div[@class="XXX XXX"]
即://标签[@class="XXX XXX"] (class包含多个字符串,直接复制即可,空格即空格)
xpath定位://span[text()="搜索"]
即://标签[text()="XX"]
其余特殊标识也一致
- css定位:input[placeholder=请选择环境]
即:标签[标识=XXX](不需要加引号)
- xpath定位://input[@placeholder="请选择环境"]
即://标签[@标识=“XXX”]
- css定位:input.el-input__inner[placeholder=请选择环境]
即:标签.XXX[标识=YYY]
- xpath定位://input[@class="el-input__inner" and @placeholder="请选择环境"]
即://标签[@class="XXX" and @标识="YYY"]
- xpath定位://a[@class="label-button a-primary" and text()="详情"]
即://标签[@标识="XXX" and text()="YYY"]
- css定位:div.el-table__body-wrapper.is-scrolling-none>table.el-table__body
即:父层定位>子层定位(以尖括号“ > ”引出子元素)
- xpath定位://div[@class="el-table__body-wrapper is-scrolling-none"]/table[@class="el-table__body"]
即://父层定位/子层定位(以单斜杠“ / ”引出子元素)
- xpath定位:tr[@class="el-table__row"]/td[position()=1] (第一个子层)
或:tr[@class="el-table__row"]/td[2] (第二个子层)
- css定位:div.el-table__body-wrapper.is-scrolling-none tr.el-table__row
即:祖先层 子孙层(中间空格隔开即可)
- xpath定位://div[@class="el-table__body-wrapper is-scrolling-none"]//tr[@class="el-table__row"]
即://祖先层//子孙层(双斜杠隔开即可)
文章浏览阅读240次。20172319 2018.10.19 《Java程序设计教程》第7周课堂实践课程:《程序设计与数据结构》班级:1723学生:唐才铭学号:20172319指导老师:王志强日期:2018.10.19必修/选修:必修目录测试内容测试要求实验步骤需求分析相关知识实现及解释错误分析参考资料测试内容三种查找算法练习:给定关键字序列:11,..._第六次作业 92给定关键字序列{ 11,78, 10, 1,3,2,4,21},分别用顺序查找、折半查找
文章浏览阅读290次。jobs------------查看在后台执行的进程fg %n----------将后台执行进程n调到前台执行,n表示jobnumber(通过jobs查看的进程编号,而非pid)ctrl+z----------将在前台执行的进程,放到后台并挂起bg %n---------将在后台挂起的进程,继续执行ctrl+c----------前台进程终止kill %n---------杀掉后台运行的..._jjob命令
文章浏览阅读9.6k次,点赞128次,收藏118次。本文为经典算法OJ题练习,大部分题型都有多种思路,每种思路的解法博主都试过了(去网站那里验证)是正确的,大家可以参考!!
文章浏览阅读1.5k次。思路简单粗暴,直接注册一个模块监听,然后当目标驱动加载时hook它的驱动加载函数,直接返回成功,对付一下比较简单的驱动保护效果屡试不爽获取DriverEntryPVOID GetDriverEntryByImageBase(PVOID ImageBase){ PIMAGE_DOS_HEADER pDOSHeader; PIMAGE_NT_HEADERS64 pNTHeader; PVOID pEntryPoint; pDOSHeader = (PIMAGE_DOS_HEADER)ImageB_pimage_nt_headers64 pntheaders64 = (pimage_nt_headers64)((ulong64)hmod + pdo
文章浏览阅读7.1k次,点赞6次,收藏9次。在SpringBoot中为了降低耦合度,简化开发,有很多方便的注解,其中@COnfigurationProperties和@ConditionalOnProperties就只个人觉得比较好用的组件中的两个@ConfigurationProperties的用法这个注解可以根据配置文件中的配置绑定相关属性到有这个注解的类上其中有四个静态方法 @AliasFor("prefix") Stri..._configurationonproperties
文章浏览阅读2.6k次。标注、批注_visio标注总跑到图形中心
文章浏览阅读232次。方法没有重载在其他语言中,可以定义多个重名的方法,只要保证方法签名唯一即可。方法签名包含三个部分:方法名、参数数量、参数类型。Python中,方法的参数没有类型(调用时确定参数类型),参数的数量也可以由可变参数控制。因此,Python方法中是没有方法重载的。定义一个方法即可有多种调用方式。相当于实现了其他语言中的方法的重载。如果我们在类体中定义了多个重名的方法,只有最后一个方法有效。建议: 不要使用重名的方法,Python中方法没有重载。class Person: def say_hi(s
文章浏览阅读695次。点击查看原文更多精彩内容由于2016年年中调换工作的原因,对容器网络的研究中断过一段时间。随着当前项目对Kubernetes应用的深入,我感觉之前对于容器网络的粗浅理解已经不够了,容器网络成了摆在前面的“一道坎”。继续深入理解K8s网络、容器网络已经势在必行。而这篇文章就算是一个重新开始,也是对之前浅表理解的一个补充。我还是先从Docker容器网络入手,虽然Dock_veth addrgenmode
文章浏览阅读1w次,点赞10次,收藏48次。一、PE的基本概念 PE(Portable Execute)文件是Windows下可执行文件的总称,常见的有DLL,EXE,OCX,SYS等,事实上,一个文件是否是PE文件与其扩展名无关,PE文件可以是任何扩展名。 认识PE文件不是作为单一内存映射文件被装入内存是很重要的。Windows加载器(又称PE加载器)遍历PE文件并决定文件的哪一部分被映射,这种映射方式是将文件较高的偏移..._pe文件头作用
文章浏览阅读2.6w次,点赞3次,收藏27次。Charles安装教程1、解压文件包之后双击打开“Charles 64位_4.2.7.4.msi”开始安装2、点击“Next”3、勾选“我同意条款”,然后点击“Next”4、选择软件要安装的目录,然后点击“Next”5、点击“Install”6、点击“Finish”完成安装教程1、我们打开“Charles 汉化&授权.exe”,选择“中文注册版”,然后点击“Patch”即可。资源地址:Charles(HTTP抓包工具软件)中文版Charles使用教程1、PC抓包由于该_charles中文版
文章浏览阅读627次,点赞28次,收藏23次。本系统采用的数据库是Mysql,使用python语言,使用django技术进行开发。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。
文章浏览阅读956次。Ansible架构图_centos 安装 ansible 国内源