使用switch_to_windows()并打印标题的Selenium webdriver不会打印标题.

Ana*_*and 15 python selenium

这是代码

for handle in browser.window_handles:
    print "Handle = ",handle
    browser.switch_to_window(handle);
    elem = browser.find_element_by_tag_name("title")
    print elem.get_attribute("value")
Run Code Online (Sandbox Code Playgroud)

我得到以下输出

Handle =  {564f8459-dd20-45b8-84bf-97c69f369738}
None
Handle =  {85338322-5e58-4445-8fe3-3e822d5a0caf}
None
Run Code Online (Sandbox Code Playgroud)

拿到手柄后,我切换到窗口并打印标题.为什么我没有看到任何头衔.不会有任何头衔吗?当我看到页面的html源代码时,我看到了标题标签.

小智 41

driver.switch_to_window(driver.window_handles[-1])
title=driver.title
Run Code Online (Sandbox Code Playgroud)

你可以简单地使用上面的代码.driver.window_handles [-1]会得到最新的窗口.


Aco*_*orn 10

页面的标题不在元素的value属性中title,它将是该元素的文本内容.

访问该文本的正确方法是 browser.find_element_by_tag_name("title").text

甚至更容易,只需访问browser.title.