gpt4 book ai didi

javascript - 向警报写入一些文本

转载 作者:行者123 更新时间:2023-11-30 19:08:30 25 4
gpt4 key购买 nike

你能帮忙处理这个案子吗?

我想在提示警报中写一些文本。我使用了 switch_to.alert 和 send_keys 命令,但它不起作用。

   baseUrl = "https://www.seleniumeasy.com/test/javascript-alert-box-demo.html"
driver = webdriver.Chrome()
driver.maximize_window()
driver.get(baseUrl)

driver.find_element_by_xpath("//button[contains(text(),'Click for Prompt Box')]").click()
alert1 = driver.switch_to.alert.send_keys("some text")
alert1.accept()

我收到这个错误:

alert1.accept()

AttributeError: 'NoneType' 对象没有属性 'accept'

最佳答案

您可以先尝试获取警报,然后调用 send_keys 和 accept 方法。

alert1 = driver.browser.switch_to.alert
alert1.send_keys("some text")
alert1.accept()

如果您仍然收到 NoneType 错误,可以添加一个显式等待警报出现的时间。

 WebDriverWait(browser, 10).until(EC.alert_is_present(),
'Timed out waiting for PA creation ' +
'confirmation popup to appear.')

由于existing issues在撰写本文时,对于 Selenium,alert.send_keys 无法正常工作。下面是使用 PyAutoGUI 的解决方法

import time
import pyautogui

baseUrl = "https://www.seleniumeasy.com/test/javascript-alert-box-demo.html"
driver = webdriver.Chrome()
driver.maximize_window()
driver.get(baseUrl)
driver.find_element_by_xpath("//button[contains(text(),'Click for Prompt Box')]").click()
alert1 = driver.switch_to.alert
time.sleep(1)
pyautogui.typewrite('Hello world!')
time.sleep(1)
alert1.accept()

关于javascript - 向警报写入一些文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58743053/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com