如何使用 selenium Python 从页面获取弹出式验证消息?

How do I get a popup validation message from a page using selenium Python?

如何在照片中使用 Selenium Python 获取弹出式验证消息“如果您想继续,请勾选此框”?

<input oninvalid="this.setCustomValidity('Please tick this box if you want to proceed')" oninput="this.setCustomValidity('')" class="form-check-input checkbox-switch-md" type="checkbox" id="registerTermsCheckboxId" required="">

Screenshot

试试下面的方法,希望这能解决您的问题。

from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait


toolTip = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, 'registerTermsCheckboxId')))
hov = ActionChains(driver).move_to_element(toolTip)
txt = hov.perform()
tooltipText = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, 'registerTermsCheckboxId'))).text
print(tooltipText)

找到问题的解决方案,我可以使用以下 JavaScriptExecutor 代码提取验证消息中的文本:

message_element = driver.find_element(By.XPATH, Locators.acceptCheckButton_xpath)
accept_button_message = driver.execute_script("return arguments[0].validationMessage", message_element)
print("Message : ", accept_button_message)