【selenium】隐藏的元素怎么利用F12中的小箭头进行元素定位

本文介绍在使用Selenium进行网页自动化测试时,如何利用开发者工具定位难以直接选取的悬浮窗及隐藏元素,包括使用快捷键Ctrl+Shift+C定位悬浮窗,以及通过修改元素属性使隐藏元素可见的方法。

一.悬浮窗定位

打开浏览器,按F12,会出现开发者调试工具,我们在使用selenium的时候,通常会使用F12中的元素定位功能来查看我们需要元素的位置,但是对于有的悬浮窗而言,你的鼠标必须停留在悬浮窗上,就没有办法再去点击F12中的小箭头,怎么办呢,很简单,利用快捷键,Ctrl+Shift+C
在这里插入图片描述

二.隐藏元素定位

有的隐藏框,通过快捷键也无法定位,因为在按快捷键Ctrl+Shift+C的时候,需要定位的元素也会隐藏起来,这时候怎么办呢。
在这里插入图片描述
例如上面的下拉框,需要点击下拉按钮,才会显示下拉框,鼠标移走的话,下拉框也会跟着消失,而且使用快捷键Ctrl+Shift+C下拉框也会消失,可以使用下面的方法:

  1. 按F12出现开发者模式窗口
  2. 点击按钮弹出下拉框,然后在下拉框上面点击右键,会弹出一个菜单,然后点击菜单上的《检查》按钮
    在这里插入图片描述
  3. 在开发者模式窗口中会出现以下代码,需要在里面找到这个下拉框的定义,然后看到里面有一个属性名为《ant-select-dropdown-hidden》,然后双击这里,可以进行编辑,删除掉这个属性
    在这里插入图片描述
  4. 可以发现下拉框显示出来了,然后就可以对元素进行定位了
    在这里插入图片描述
Edge更新后出现项目登录页输入框无法点击,F12箭头只能选中表单父div而选不中内部元素的问题,可能是跟本次更新浏览器收紧了 3D 渲染规范的执行有关,原先浏览器版本可能对 3D 上下文的处理更宽松,允许 3D 容器内的子元素 “穿透” 3D 上下文进行交互,即使未正确配置 transform-style 或 3D 变换属性 [^2]。 可以尝试以下解决办法: 1. **检查并配置 3D 相关属性**:确保页面中所有使用了 perspective 样式的 div 元素都正确配置了 transform-style 和 3D 变换属性。 2. **使用代码定位元素**:按照定位和操作元素的规则,使用代码来定位登录页的输入框和按钮并进行操作。若元素有 id 属性,用 `find_element_by_id`;没有则用 `find_element_by_xpath`。定位元素后,使用 `click()` 方法点击,使用 `send_keys()` 方法输入内容 [^1]。 示例代码如下: ```python from selenium import webdriver # 假设使用 Firefox 浏览器,可根据实际情况修改 browser = webdriver.Firefox() browser.get('项目登录页的 URL') # 定位输入框并输入内容 try: # 先尝试用 id 定位 input_elem = browser.find_element_by_id('输入框的 id') except: # 若 id 定位失败,使用 xpath 定位 input_elem = browser.find_element_by_xpath('输入框的 xpath') input_elem.send_keys('要输入的内容') # 定位登录按钮并点击 try: # 先尝试用 id 定位 login_button = browser.find_element_by_id('登录按钮的 id') except: # 若 id 定位失败,使用 xpath 定位 login_button = browser.find_element_by_xpath('登录按钮的 xpath') login_button.click() ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值