python - 我想使用 python selenium 统计打开的窗口数量并一一关闭它们

标签 python selenium selenium-webdriver

我是一名初学者,我正在使用 python 和 selenium 进行自动化。所以,请在 python-selenium 中解决以下问题。

问。假设打开了 n 个窗口。我想计算打开的窗口数量并打印它们。然后一一关闭所有窗口。

这是我写的:

driver.get("https://www.irctc.co.in")
driver.find_element_by_link_text('Flights').click()
multi_window = driver.window_handles
length = len(multi_window)
print("Number of window open: ", length)

如何一一关闭窗口?

最佳答案

尝试一一切换到每个窗口并关闭它们:

for window in multi_window:
    driver.switch_to.window(window)
    driver.close()

请注意,这将关闭所有打开的窗口。如果您想留在初始窗口:

driver.get("https://www.irctc.co.in")
current = driver.current_window_handle

driver.find_element_by_link_text('Flights').click()
multi_window = driver.window_handles

for window in multi_window:
    if window != current:
        driver.switch_to.window(window)
        driver.close()
driver.switch_to.window(current)

关于python - 我想使用 python selenium 统计打开的窗口数量并一一关闭它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48855078/

相关文章:

python - 如何在模板中引用函数的结果? Django

python - Django 立即测试模拟日期时间

python - 如何在字典中添加具有相似键的值?

selenium - PhantomJS 无法访问自签名 HTTPS 页面 Codeception

java - geb.driver.DriverCreationException : failed to create driver from callback

python - 使用python使用open-CV找到对象的测量

testing - 自动化测试 Web 应用程序

python - Selenium:WAITING空元素(跨度)包含任何文本

jenkins - 如何通过 Jenkins 和 Headless 浏览器在虚拟服务器空间中运行 Selenium Webdriver 测试用例(Maven 项目)?

python - 如何使用 Python + Selenium 设置代理身份验证(用户和密码)