Selenium系列(七) - 切换iframe

2020-06-09 15:32:55 浏览数 (1)

如果你还想从头学起Selenium,可以看看这个系列的文章哦!

https://www.cnblogs.com/poloyy/category/1680176.html

其次,如果你不懂前端基础知识,需要自己去补充哦,博主暂时没有总结(虽然我也会,所以我学selenium就不用复习前端了哈哈哈...)

保存iframe.html到本地

后面代码针对此简单页面写小案例

代码语言:javascript复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<p id="p1">你好,小菠萝测试笔记</p>

<iframe id="iframe1" src="http://www.baidu.com" height="300px" width="80%">
</iframe>

<a href="https://www.cnblogs.com/poloyy/" id="out">访问小菠萝测试笔记</a>

</body>
</html>

iframe操作有哪些?

  • 切换到iframe
  • 切换回主页面

比较简单,不展开讲了~就两个方法而已~直接看代码啦!

代码语言:javascript复制
# !/usr/bin/env python
# -*- coding: utf-8 -*-

"""
__title__  =
__Time__   = 2020/3/25 17:52
__Author__ = 小菠萝测试笔记
__Blog__   = https://www.cnblogs.com/poloyy/
"""

from selenium import webdriver

# 加载驱动,路径自己配置
driver = webdriver.Chrome("../resources/chromedriver.exe")

# html页面路径需要自己配置
driver.get(
    "file:///F:/iframe.html")
driver.maximize_window()

# 找到iframe元素
iframe1 = driver.find_element_by_id("iframe1")

# ===切换至iframe===
driver.switch_to.frame(iframe1)

# 找到iframe中页面的元素
# 找到搜索框
inputElement = driver.find_element_by_id("kw")

# 输入搜索内容
inputElement.send_keys("小菠萝测试笔记")

# 找到搜索按钮
searchElement = driver.find_element_by_id("su")

searchElement.click()

# ===切换回主页面===
driver.switch_to.default_content()

# 点击主页面元素
driver.find_element_by_id("out").click()

注意

WebDriver是提供了 driver.switch_to_frame()、driver.switch_to_default_content() 这两个方法的,和上面说的效果一样,只是这个已经过时了,不建议用!

0 人点赞