博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python+Selenium练习篇之3-利用tag name定位元素
阅读量:4301 次
发布时间:2019-05-27

本文共 858 字,大约阅读时间需要 2 分钟。

       前一篇文章介绍了如何通过元素的id值来定位web元素,本文介绍如何通过tag name来定位元素。个人认为,通过tag name来定位还是有很大缺陷,定位不够精确。主要是tag name有很多重复的,造成了选择tag name来定位页面元素不准确,所以使用这个方法定位web元素的机会很少。

      什么是tag name? 还是以百度首页搜索输入框,在火狐浏览器,右键,通过firepath,检查元素,看下图:

      上面图片中红色圈选区域的标签名称都是tag name;实际上我们目标元素是输入框,应该是input这个tag name,在图中蓝色高亮区域。但是如果只是通过input这个tag name来定位,发现上面有很多input的选项。所以我们扩大节点的参照选择,我们选择上面这个form来作为我们tag name。

看看如何写定位form这个元素的脚本:

# coding=utf-8from selenium import webdriverdriver = webdriver.Chrome()driver.maximize_window()driver.implicitly_wait(6)driver.get("https://www.baidu.com")try:    driver.find_element_by_tag_name("form")    print ('test pass: tag name found')except Exception as e:    print ("Exception found", format(e))driver.quit()

测试结果:

test pass: tag name found

总结:本文介绍了webdriver 八大定位元素方法中的

driver.find_element_by_tag_name("form")  # form是tag name 从实际项目中自动化脚本开发来看,使用这个方法定位元素的机会比较少,知道有这么一种方法就好了。
你可能感兴趣的文章
Git(四) - 分支管理
查看>>
PHP Curl发送数据
查看>>
HTTP协议
查看>>
HTTPS
查看>>
git add . git add -u git add -A区别
查看>>
apache下虚拟域名配置
查看>>
session和cookie区别与联系
查看>>
PHP 实现笛卡尔积
查看>>
Laravel中的$loop
查看>>
CentOS7 重置root密码
查看>>
Centos安装Python3
查看>>
PHP批量插入
查看>>
laravel连接sql server 2008
查看>>
Laravel 操作redis的各种数据类型
查看>>
Laravel框架学习笔记之任务调度(定时任务)
查看>>
laravel 定时任务秒级执行
查看>>
浅析 Laravel 官方文档推荐的 Nginx 配置
查看>>
Swagger在Laravel项目中的使用
查看>>
Laravel 的生命周期
查看>>
CentOS Docker 安装
查看>>