如何使用Selenium Webdriver获取鼠标悬停弹窗元素的文本
获取HTML5原生表单验证提示文本的方法
你遇到的是HTML5原生表单验证提示,这种提示是浏览器自动生成的,不会出现在DOM结构里,所以用常规的Alert、元素定位方法根本抓不到。要获取这个文本,得通过访问表单元素的原生属性来实现:
- 先触发验证行为(比如点击登录按钮,让空字段触发必填验证)
- 通过JavaScript访问对应输入框元素的
validationMessage属性,就能拿到提示文本
以Selenium为例,具体代码示例:
# 定位邮箱输入框(替换成你实际能用的定位方式,比如ID、CSS选择器) email_input = driver.find_element(By.ID, "email") # 点击登录按钮触发验证 driver.find_element(By.CSS_SELECTOR, "button[type='submit']").click() # 执行JS脚本获取验证提示文本 validation_text = driver.execute_script("return arguments[0].validationMessage;", email_input) print(validation_text) # 输出即为 "Please fill out this field"
如果用其他自动化工具(比如Cypress、Playwright),核心思路完全一致:找到目标输入框元素,调用对应工具的API执行JavaScript,读取元素的validationMessage属性即可。
内容的提问来源于stack exchange,提问作者talvi8942
相关产品推荐
相关产品推荐

