Python selenium模块实现定位过程解析

作者:小理想 时间:2021-01-10 10:50:27 

selenuim模块定位方法

1,我们想要操作html页面上的元素,首先必须要定位到这个元素上。每个元素都有他各自的属性,比如id,name,class等,我们就通过这些属性来定位元素。

2,我们先打开一个网页,按F12来获取这个网页的源代码,方便我们定位元素。


from selenium import webdriver
driver=webdriver.Chrome() #启动谷歌浏览器
driver.get("http://www.baidu.com")  #打开百度网页

Python selenium模块实现定位过程解析

3,按F12我们获取到元素,鼠标点击图片红框中的标,然后把鼠标放到你想要获取的元素位置,然后右边代码会自动定位。

定位方法详解

1.用id定位

Python selenium模块实现定位过程解析

我们可以看到右边代码元素id为kw。


from selenium import webdriver
driver=webdriver.Chrome()
driver.get("http://www.baidu.com")

s=driver.find_element_by_id('kw')   #定位到id等于kw的元素(百度搜索框)

s.send_keys('您好')  #在搜索框内输入你好

        2.用name来定位

#代码同上
driver.find_element_by_name('wd') #定位name为wd的元素

3.用classname来定位

#代码同上
driver.find_element_by_class_name('s_ipt') #通过类名定位,一般类名有重复的,不常使用

4.用标签来定位

#代码同上
driver.find_element_by_tag_name('tag') #标签定位,不常使用

5.定位a标签。


#代码同上
driver.find_element_by_link_text('text')    #定位a标签的内容完全匹配
driver.find_element_by_partical_link_text('text')  #定位a标签内容模糊匹配

6.通过路径来定位,常用相对路径。

driver.find_element_by_xpath(//*[@id="kw"]) #相对路径定位注意:

html中,大多数的元素都具备id和name的属性,并且id是唯一的,因此用id和name来定位元素是比较常见的方式。 不过有的元素并不具备id和name属性,我们则可以用class name来定位元素。当然我还可以用tag name来定位,但是标签名字太容易重复,除非想定位一组相同标签的元素,否则一般不推荐使用

来源:https://www.cnblogs.com/xiaolixiang/p/13256411.html

标签:python,selenium,模块,定位
0
投稿

猜你喜欢

  • Python网页正文转换语音文件的操作方法

    2021-03-26 04:27:30
  • web程序员的思考

    2009-08-04 13:10:00
  • mysql limit查询优化分析

    2023-11-16 00:51:04
  • python爬虫之爬取百度音乐的实现方法

    2022-09-02 06:22:10
  • python interpolate插值实例

    2022-05-06 08:20:37
  • Python元组常见操作示例

    2023-06-28 20:48:26
  • 详解Django中Request对象的相关用法

    2021-12-08 16:30:06
  • matplotlib绘制折线图的基本配置(万能模板案例)

    2022-09-06 18:06:17
  • 标准的、语义的、Unobtrusive的页签tab切换

    2007-11-03 13:58:00
  • Python实现鼠标自动在屏幕上随机移动功能

    2022-01-30 05:08:15
  • oracle join on 数据过滤问题

    2009-07-14 21:17:00
  • Python ChineseCalendar包主要类和方法详解

    2021-10-12 10:40:40
  • PHP实现的AES加密、解密封装类与用法示例

    2023-07-23 12:56:45
  • python实现用户登录系统

    2023-10-13 13:17:22
  • Python Flask搭建yolov3目标检测系统详解流程

    2023-07-07 12:40:05
  • web2.0中流行的设计元素:颜色

    2007-12-10 12:16:00
  • Elasticsearch属性单词常用解析说明

    2023-06-12 14:47:36
  • asp.net微信开发(永久素材管理)

    2023-07-21 13:02:45
  • python提效小工具之统计xmind用例数量(源码)

    2021-11-26 21:42:44
  • Python中使用ConfigParser解析ini配置文件实例

    2021-06-18 01:41:44
  • asp之家 网络编程 m.aspxhome.com