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

时间:2012-10-28 23:09:00

标签: 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")

我收到以下输出

Handle =  {564f8459-dd20-45b8-84bf-97c69f369738}
None
Handle =  {85338322-5e58-4445-8fe3-3e822d5a0caf}
None

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

2 个答案:

答案 0 :(得分:40)

driver.switch_to_window(driver.window_handles[-1])
title=driver.title

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

答案 1 :(得分:10)

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

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

或者更简单,只需访问browser.title