python xpath定位打印元素_python基础教程:8种selenium元素定位的实现

前言

selenium是一个非常厉害的爬虫利器,不,简直是神器了,它可以自动的控制浏览器,但是你得告诉浏览器,你想干嘛,爬哪里,这时候就要用到元素定位了,在HTML中都有着不同的标签和属性,selenium根据它们来确定你的意图,每个方式都对应两个方法

8种方式

1.通过 id 定位

2.通过 name 定位

3.通过 class 定位

4.通过 tag 定位

5.通过 link 定位

6.通过 partial link 定位

7.通过 xpath 定位

8.通过 css 选择器定位

141fe2d765565e6132f8b6590b9f2ab0.png

1.通过 id 定位

c0ac9a88df05aefeb94c486b09d86b39.png

这个要特别说明一下,find_element_by_( ),是用来定位单个元素的,find_elements_by_( ),是用来定位多个元素的。学过英语都是加一个复数是多个,下面的定位跟这个也是一样的

实例代码:

5ad729316fe3b9c4e9f5375ed3768c41.png

2.通过 name 定位

1175a7226b70dde08f2a9fbe5eb7c981.png

实例代码:

a7df32c42196f182838ab9dc49aa866f.png

3.通过 class 定位

59e622c1af1579f3cdaa6ac1b659d7cc.png

实例代码:

9598161b2fa28adb9c6cd62db96ca40a.png

4.通过 tag 定位

669f068472459d860aa00f9f4f6007d9.png

实例代码:

bed5b535a3796a5044f49d4f4039bcb7.png

学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习python或者有兴趣学习python的伙伴可以私信回复小编“学习” 获取资料,一起学习

5.通过 link 定位

300f81a29e865e133b49d510c8335bb3.png

实例代码:

35f65d9fdb7bd8cc4d42087bca3684d2.png

6.通过 partial link 定位

b999cacd7f6bd5fdff624ed176d23837.png

实例代码:

e6b296edf8906b4edc7738fb372209a7.png

7.通过 xpath 定位

67e4b3cb3c9f93cb305fe31bbd2a7407.png

实例代码:

b228911191ccbec3429d83bef4670b36.png

8.通过 css 选择器定位

65d7acbac7cc06d72edf5e4f2a78430c.png

实例代码:

38773443657fc2205dba9361b3994d61.png

以上就selenium元素定位的方式方法,但是感觉不太顺手,就只有Xpath好一点,但是呢,还有样式CSS定位是最强大和灵活的,不过比较难掌握,当然网上还有更加便捷的方法,既然有时候要用这种,当然得了解一下啦

d0ee6279867f245454c93c733c5d98b5.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/422687.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面向对象之多态性(基类引用可以指向子类)

1、派生类的对象和基类是属于的关系,即 对象 is a X类,对象属于X类。 2、多态性的概念: 了解多态性之前,要熟悉引用和对象的区别: 对象存储在堆中,引用(符)存储在栈中,引…

【算法设计与分析】11 递归树

当前面所学习的迭代法、差消法等不太好解决的问题,可以使用递归树,来很方便的解决。 文章目录1. 递归树的概念1.1 迭代在递归树中的表示2. 递归树的生成规则2.1 递归树生成实例2.2 递归树应用实例3. 总结1. 递归树的概念 递归树是迭代计算的模型递归树的…

【算法设计与分析】12 主定理及其应用

主定理是一个非常有用的定理,前面我们学习的所有知识都可以用主定理来求解,而不必要使用复杂的计算方法来求解 文章目录1. 主定理1.1 主定理的应用背景1.2 主定理内容2. 主定理的应用2.1 求解递推方程 例12.2 求解递推方程 例22.3 求解递推方程 例33. 总…

CSUOJ 1196- Staginner 去爬山

http://acm.csu.edu.cn/OnlineJudge/problem.php?id1196 这道题也是搜索题,还是dfs,我们只需对最后一行进行搜索,然后找到能爬到的最高高度即可,每走 一步我们就计算一次现在处于的高度h,然后与maxh比较。因为开始少写…

迪普交换机清空配置_交换机环路详解

“ The more you know the more you know you dont know”背景近期在交换机配置中发生了一次接线错误导致交换机环路,从而引发广播风暴的一个例子。所以特意花时间了解一下交换机产生广播风暴的原理,并整理了此篇文章,一来可以梳理自己的知识…

前端学习(342):进制只能介于2-36之间Uncaught RangeError: toString() radix argumen

The error is: Uncaught RangeError: toString() radix argument must be between 2 and 36 Just trying to format the date 只能介于2-36之间

单元测试debug过程中,显示variables are not available

注:我的代码是多线程异步执行的 单元测试,代码在进行debug调试时,执行到某一行代码突然就显示variables are not available,多次尝试,始终是会在某一行代码处出现上述的情况。 经过分析,得出原因:单元测试的…

(转)C++的 RTTI 概念和用途

自从1993年Bjarne Stroustrup 〔注1 〕提出有关C 的RTTI功能之建议﹐以及C的异常处理(exception handling)需要RTTI;最近新推出的C 或多或少已提供RTTI。 然而,若不小心使用RTTI,可能会导致软件弹性的降低。本文将介绍RTTI的观念和近况﹐并说…

1400协议是什么和28181区别_1400张拆解案例,够你PPT拆解学习好几遍了!

本文作者:执生若梦简介:「拆P教室」小伙伴、个人公众号「君梦幻灯」指导:优卡优卡大大前段时间开启了一个新栏目,图解计划。拆解一张图片,向其中学习PPT制作技巧。我一直在收集音乐banner图,现在已经达到了…

【算法设计与分析】13 分治策略的设计思想

算法中很多方法都是可以采用分治策略进行设计与优化,那么什么是分治策略?如何使用分治策略进行算法的设计与分析? 文章目录1. 分治策略的基本思想1.1 二分检索的设计思想1.2 二分归并排序的设计思想1.3 Hanoi塔的递归算法2 小结1. 分治策略的…

字段 新增hive_Hive分区表 | 每日五分钟学大数据

数据分区的一般概念存在已久。其可以有多种形式,但是通常使用分区来水平分散压力,将数据从物理上转移到和使用最频繁的用户更近的地方,以及实现其他目的。Hive中有分区表的概念。我们可以看到分区表具有重要的性能优势,而且分区表…

【算法设计与分析】14 分治算法的一般描述和分析方法

本文主要描述分治算法的一般描述和分析方法。衔接上一篇文章:【算法设计与分析】13 分治策略的设计思想 文章目录1 分治算法的一般性描述1.1 分支算法的时间分析1.2 两类常见的递推方程与求解方法2 总结1 分治算法的一般性描述 设分治算法为:Divide-and…

idea_取消自动import .*

打开设置 > Editor > Code Style > Java > Scheme Default > Imports ① 将 Class count to use import with “" 改为 99 (导入同一个包的类超过这个数值自动变为 * ) ② 将 Names count to use static import with "” 改为 …

呼呗电销机器人_为什么企业销售电销都用电销外呼智能机器人

电销行业“痛点”明显,成为企业发展桎梏在电销企业中,运营成本占据了很大的资金比例,呼叫中心搭建和后期维护、销售人员的薪酬、培训、学习成本等都需要大量的投入,导致企业发展后劲不足。挂断、拒接常有,谁来拯救电销…

知识管理系统Data Solution研发日记之十二 网页数据抓取Fetch,呈现Render,导出Export...

这篇文章是对第四篇文章《知识管理系统Data Solution研发日记之四 片段式数据解决方案》的补充,提供一套完整的解决方案。请先阅读那一篇文章来了解它的原理。 Rule Editor抓取数据 这里,主要的工作是设定目标地址,正则表达式规则。我生活在深…

【算法设计与分析】15 分治策略:芯片测试

上一篇文章学习了【算法设计与分析】14 分治算法的一般描述和分析方法 文章目录1. 芯片测试1.1 一次测试的过程1.2 如何测试一块芯片的好坏1.3 蛮力算法1.4 分治算法设计思想1.41 分治算法的正确性证明1.42 时间复杂度分析2. 总结本篇文章借助具体的例子来学习分治策略。这个例…

批量 材质 调整_游戏图形批量渲染及优化:Unity静态合批技术

作者:枸杞忧天(本文首发于公众号“偶尔学学Unity”,文章仅为作者观点,不代表GWB立场)最近在准备公司的技术分享,主题是入门批量渲染,想着反正也总结了,不如充几篇博客吧,也算显得没有那么半途而…

css - clearfix-清除浮动

参考: http://www.cnblogs.com/zllwebjs/archive/2010/03/19/1689980.html http://www.cnblogs.com/zhangyufeng523/archive/2011/05/09/2041224.html 清除浮动方法有好几种, 1. 用空div,设置css为clear:both 2. 用空br,设置css为…

【算法设计与分析】16 分治策略:快速排序(快速排序的时间复杂度计算)

上一篇文章学习了:【算法设计与分析】15 分治策略:芯片测试 文章目录1. 快速排序的基本思想1.2 时间复杂度的计算1.21 最坏情况时间复杂度计算1.22 最好情况时间复杂度1.23 平均时间复杂度计算2 总结1. 快速排序的基本思想 用首元素 x 作划分标准&#…

的run窗口不显示_「玩转deepin」如何安装VirtualBox增强功能使得deepin全屏显示?...

在Windows上通过Virtualbox安装deepin深度操作系统,安装完成后,为了让deepin可以在virtualbox中全屏显示,需要安装增强工具,但是不少同学点击安装增强工具后会出现无法安装的情况。在【设备】中点击【安装增强功能】时&#xff0c…