赞
踩
''' 环境: Python 3.8 selenium==3.141.0 urllib3==1.26.19 '''
''' 说明: driver.switch_to.frame() # 将当前定位的主体切换为frame/iframe表单的内嵌页面中 driver.switch_to.default_content() # 跳回最外层的页面 '''
# 判断元素是否在 frame/ifame 中
# 126 邮箱为例
- # -*- coding: UTF-8 -*-
-
- from selenium import webdriver
- import time
-
- # 谷歌浏览器位置
- CHROME_PATH = r'xxx\\chrome.exe'
- # 谷歌浏览器驱动地址
- CHROMEDRIVER_PATH = r'xxx\\chromedriver.exe'
-
- options = webdriver.ChromeOptions()
- options.add_experimental_option("excludeSwitches", ["enable-automation"])
- options.add_experimental_option("useAutomationExtension", False)
- options.binary_location = CHROME_PATH
- driver = webdriver.Chrome(executable_path=CHROMEDRIVER_PATH, options=options)
-
- driver.get('https://www.126.com/')
-
- # 调到 ifame
- iframe = driver.find_element_by_tag_name('iframe')
- driver.switch_to.frame(iframe)
-
- element = driver.find_element_by_name('email')
- element.send_keys('xiaoxiao')
-
- # 跳回最外层的页面
- driver.switch_to.default_content()
- element = driver.find_element_by_link_text('注册新账号')
- element.click()
-
- time.sleep(10)
- driver.quit()
''' 参考: 【web端自动化】如何判断页面元素是否嵌套在iframe里面 https://blog.csdn.net/lanniya152/article/details/124364417 python自动化测试selenium(四)切换页面、切换窗口 https://blog.csdn.net/u010835747/article/details/125501993 web自动化:4.2selenium如何实现iframe窗口的切换(3种方法) https://blog.csdn.net/weixin_48415452/article/details/120035381 python+selenium(11)---操作id为动态变化的frame(iframe) https://blog.csdn.net/wjgccsdn/article/details/113935626 Selenium之link_text和partial_link_text定位 https://blog.csdn.net/dpl12/article/details/102847074 '''
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。