如何使用iframe作为网页的一部分,但没有通过webdriver识别?

时间:2013-11-29 13:44:19

标签: selenium

我正在尝试使用webdriver自动化网页,在这里我感到震惊的是iframe,我不知道如何处理。

当我通过选择使用iframe为iframe选择css时,它会给我#xEditingArea

如果我使用css或id搜索相同的iframe,则无法识别任何内容。 我尝试了一切 我想用iframe的消息体写一些消息。

任何人都可以指导我如何处理这个问题吗?

提前致谢。

3 个答案:

答案 0 :(得分:0)

如果您的网站上只有一个iFrame,您可以尝试使用XPath和标记名访问它。

答案 1 :(得分:0)

无法直接访问iframe,它有自己的DOM元素,我们必须切换到该特定帧,然后执行您想要的操作。

要选择您要使用的iframe,请执行以下操作:

driver.switchTo().frame("frame1");

现在,您的驱动程序设置为使用DOM iframe。

重要的是要记住,可能需要切换“返回”。这是这样做的:

driver.switchTo().defaultContent(); 

答案 2 :(得分:0)

使用Python Selenium WebDriver,您可以使用以下方式访问框架:

from selenium import webdriver

browser = webdriver.Firefox()
browser.switch_to_frame("fame_name_or_id")

如果要确认框架是否可以正确访问,只需使用以下方法打印出页面内容:

print browser.page_source