页面动态元素无法快速复制定位解决

问题:某些元素特定情况下出现,1s后又消失导致元素定位困难。如登录提示【登录成功】这种动态元素

原因 :前端通过setTimeout定时隐藏 / 销毁DOM元素,或动态渲染后快速移除,导致自动化脚本的定位操作滞后于元素的生命周期;此外,JS 修改元素样式(如透明、层级)也会让元素'视觉消失',看似无法定位。

解决方法:浏览器页面操作暂停JS代码的执行

F12-->sources---->当元素出现后第一时间暂停代码执行

定位后结果验证

python 复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
driver.get("你的登录页面")

# 1. 执行登录操作(输入账号密码、点击登录)
driver.find_element(By.ID, "username").send_keys("test")
driver.find_element(By.ID, "password").send_keys("123456")
driver.find_element(By.ID, "login-btn").click()

# 2. 显式等待:直到元素出现(最长等5秒),出现后立即获取文本
try:
    tip_ele = WebDriverWait(driver, 5).until(
        EC.presence_of_element_located((By.ID, "login-tip"))  # 仅判断元素存在(不管可见性)
        # 若要判断可见:EC.visibility_of_element_located((By.ID, "login-tip"))
    )
    print("提示文案:", tip_ele.text)
except:
    print("未捕获到提示文案")
相关推荐
X566118 小时前
如何在 Laravel 中正确保存嵌套动态表单数据(主服务与子服务)
jvm·数据库·python
ZhengEnCi19 小时前
03ab-PyTorch安装教程 📚
python
狐狐生风19 小时前
LangChain 向量存储:Chroma、FAISS
人工智能·python·学习·langchain·faiss·agentai
狐狐生风20 小时前
LangChain RAG 基础
人工智能·python·学习·langchain·rag·agentai
老前端的功夫20 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
yaoxin52112321 小时前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
dFObBIMmai21 小时前
MySQL主从同步中大事务导致的延迟_如何拆分大事务优化同步
jvm·数据库·python
szccyw021 小时前
mysql如何限制特定存储过程执行权限_MySQL存储过程安全访问
jvm·数据库·python
小白学大数据21 小时前
Python 自动化爬取网易云音乐歌手歌词实战教程
爬虫·python·okhttp·自动化
风之所往_1 天前
Python 3.0 新特性全面总结
python