前言:
目前同学们对“selenium定位iframe”大约比较看重,同学们都想要剖析一些“selenium定位iframe”的相关内容。那么小编同时在网络上汇集了一些关于“selenium定位iframe””的相关内容,希望大家能喜欢,各位老铁们快快来了解一下吧!自从开始写文章以来,有很多人的朋友来问题,其实有一个问题比较多人经常问到,为什么我的定位是对的,就是定位不到呢。
我看了一下他们的页面源码,发现问题是出在iframe框架上,没有切入这个iframe当然就定不了。
讲答思路:
第一斧:iframe 有属性名称可以定位,比如id,name 脚本实现如下:
from selenium import webdriver
#打开谷歌浏览器
driver = webdriver.Chrome()
#最大化窗口
driver.maximize_window()
#打开测试网站
driver.get("E:\\yuangbao\\bao1\\test.html")
#第一步切入iframe
driver.switch_to.frame("su1")
driver.find_element_by_id("user").send_keys("qytest")
第二斧:iframe 无属性名称可定位,利用xpath,tag_name定位
from selenium import webdriver
#打开谷歌浏览器
driver = webdriver.Chrome()
#最大化窗口
driver.maximize_window()
#打开测试网站
driver.get("E:\\yuangbao\\bao1\\test.html")
#通过标签定位iframe
tagname=driver.find_element_by_tag_name("iframe")
driver.switch_to.frame(tagname)
driver.find_element_by_id("user").send_keys("qytest")
第三斧:多个iframe 无属性名称可定位,利用find_elements定位
本例定位第二个iframe
from selenium import webdriver
#打开谷歌浏览器
driver = webdriver.Chrome()
#最大化窗口
driver.maximize_window()
#打开测试网站
driver.get("E:\\yuangbao\\bao1\\test.html")
#定位第二个iframe
tagname=driver.find_elements_by_tag_name("iframe")[1]
driver.switch_to.frame(tagname)
driver.find_element_by_id("user").send_keys("qytest")
以上几个技巧,适用大部分的场景,如果你也遇到这种的问题,希望能帮你。
标签: #selenium定位iframe