如何使用Xpath在iframe中选择元素?

2024-03-29 14:23:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我想创建一个Selenium测试,用AOL邮件测试我们的扩展。我成功地登录到AOL并撰写了一封电子邮件,但我还需要在编辑器中选择元素,编辑器位于iframe中。我检查过,即使编辑器打开,以下测试也失败:

self.assertEqual(first=1, second=len(self.driver.find_elements_by_xpath(xpath="//iframe[@name='editor_body']//body[@contenteditable='true']")))

我得到错误AssertionError: 1 != 0。如何通过Xpath(或以任何其他方式使用Selenium)选择iframe和其他元素的主体?


Tags: self元素lendriverselenium邮件bodyfind
1条回答
网友
1楼 · 发布于 2024-03-29 14:23:18

在切换到它们之前,不能遍历<iframe>。你的xPath

//iframe[@name='editor_body']//body[@contenteditable='true']

将无法工作,因为<body>标记位于iFrame中,而iFrame不在当前上下文中。你需要先切换到它:

driver.switch_to.frame('editor_body')...

相关问题 更多 >