Selenium/Python Jquery弹出窗口

2024-05-28 23:34:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试单击localhost上的“OK”以获得一个用Jquery生成的弹出窗口。我试着换到不起作用的窗户

handleName = driver.window_handles
driver.switch_to.window(handleName)

然后我还尝试了一个javascript弹出窗口,但它是一个Jquery,所以无法工作

alert = browser.switch_to_alert()
alert.accept()
browser.close()

我还有什么选择?你知道吗


Tags: tobrowserlocalhostclosedriverokalertjavascript
1条回答
网友
1楼 · 发布于 2024-05-28 23:34:36

你知道吗driver.window.u手柄返回所有打开窗口的列表。刚试过开关_到.window()并引发错误,因为它只需要一个名称而不需要列表。你知道吗

  1. 如果jquery生成实际的浏览器窗口,您可以通过其名称/标题切换到弹出窗口(如果有):

    你知道吗driver.switch\至.window(“警报弹出窗口!”)

在当前窗口和弹出窗口标题相同的情况下,我使用如下内容:

current_window = driver.current_window_handle
_handles = driver.window_handles
<popup opening button>.click()
WebDriverWait(driver, timeout).until(
    expected_conditions.new_window_is_opened(_handles))
try:
    #find new window handle
    popup_window = (h for h in
            driver.window_handles if h != current_window).next()
except StopIteration:
    raise Exception("No popup!")
  1. 如果jquery生成一些popup样式的<;div>;(而不是浏览器窗口),那么您只需像使用驱动程序。按查找元素(&L);…>

相关问题 更多 >

    热门问题