首页 新闻 会员 周边 捐助

html中iframe中的html的某一个标签的xpath

0
悬赏园豆:10 [待解决问题]

html中有一个签iframe标签,iframe标签中有html标签,获取iframe标签中html中的标签的XPath

iframe主要是用来嵌套网页的,引用外部的html页面

宋人鱼的主页 宋人鱼 | 初学一级 | 园豆:14
提问于:2022-07-07 09:07
< >
分享
所有回答(2)
0

这个操作是否可以?

懒牛拉车 | 园豆:209 (菜鸟二级) | 2022-07-07 13:43

这个操作不可以,现已解决
//切换到iframe中 id定位
var cates = driver.SwitchTo().Frame("DataList");
//路径定位
var catesa = driver.FindElement(By.XPath("/html/body/div/div/div/div[3]/div[3]/div/table/tbody/tr/td[4]/a"));
//切换成主文档
driver.SwitchTo().DefaultContent();

支持(0) 反对(0) 宋人鱼 | 园豆:14 (初学一级) | 2022-07-07 17:37

//这是把最外面的html转换成了iframe标签
var cates=driver.SwitchTo().Frame("DataList");
//这是以iframe标签最外层的XPath,但不是以/iframe开头,iframe标签是会包含另一个内框架的
var catesa = driver.FindElement(By.XPath("/html/body/div/div/div/div[3]/div[3]/div/table/tbody/tr/td[4]/a"));
//把最外层的iframe标签转换成html标签
driver.SwitchTo().DefaultContent();

支持(0) 反对(0) 宋人鱼 | 园豆:14 (初学一级) | 2022-07-07 17:44
0

//这是把最外面的html转换成了iframe标签
var cates=driver.SwitchTo().Frame("DataList");
//这是以iframe标签最外层的XPath,但不是以/iframe开头,iframe标签是会包含另一个内框架的
var catesa = driver.FindElement(By.XPath("/html/body/div/div/div/div[3]/div[3]/div/table/tbody/tr/td[4]/a"));
//把最外层的iframe标签转换成html标签
driver.SwitchTo().DefaultContent();

宋人鱼 | 园豆:14 (初学一级) | 2022-07-08 08:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册