【问题标题】:Python Selenium get current window handlePython Selenium 获取当前窗口句柄
【发布时间】:2015-02-23 01:53:37
【问题描述】:

Selenium for Java 和 Ruby 具有获取当前窗口句柄的方法。

例如,在 Java 中它指向 here

同时,Pythonic 版本的 Selenium 没有这种方法。

  1. 也许它在里面,但我没看到?
  2. 如果被跳过,是否合理以及如何解决?

【问题讨论】:

    标签: python selenium selenium-webdriver


    【解决方案1】:

    WebDriver 实例上有可用的current_window_handle property

    driver.current_window_handle
    

    演示:

    >>> from selenium import webdriver
    >>>
    >>> driver = webdriver.Chrome()
    >>> driver.get('https://stackoverflow.com')
    >>> 
    >>> driver.current_window_handle
    CDwindow-B22C1E54-977D-4B2A-8048-E9C73999E9C7
    

    要在 python 中获取窗口的名称,但使用 javascript,您可以在 python 中执行此操作:(我到处找这个,但没有给出答案)

    window_title = driver.execute_script("return window.document.title") 
    
    window_name = driver.execute_script("return window.name") # e.g. 'win1'
    

    【讨论】:

    • 谢谢!不知道我是如何跳过它的:)
    • 如何获取该窗口句柄的文本?
    • @AdamMc331 嗨,如果你的意思是 window_name,你可以使用 javascript。我已经编辑了答案希望它有所帮助。 window_name = driver.execute_script("return window.name") # e.g. 'win1'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-22
    • 1970-01-01
    • 2011-02-26
    相关资源
    最近更新 更多