微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Python / Selenium切换iframe

我正在尝试使用selenium来导航使用框架的网站.

这是第1部分的工作python脚本:

from selenium import webdriver
import time
from urllib import request

driver = webdriver.Firefox()
driver.get('http://www.lgs-hosted.com/rmtelldck.html')

driver.switch_to.frame('menu')

driver.execute_script('xSubmit()')

time.sleep(.5)

link = driver.find_element_by_id('ml1T2')
link.click()

这是页面元素:

<html webdriver="true">
    <head></head>
    <frameset id="menuframe" name="menuframe" border="0" frameborder="0" cols="170,*">
        <frameset border="0" frameborder="0" rows="0,*">
            <frame scrolling="AUTO" noresize="" frameborder="NO" src="heart.html" name="heart"></frame>
            <frame scrolling="AUTO" noresize="" frameborder="NO" src="rmtelldcklogin.html" name="menu"></frame>
        </frameset>
        <frame scrolling="AUTO" noresize="" frameborder="NO" src="rmtelldcklogo.html" name="update"></frame>
    </frameset>
</html>

我的问题是切换帧…在’菜单’中我需要进入’更新’:

driver.switch_to.frame('update')

^不起作用….错误告诉我它不在那里,即使我们可以清楚地看到它是……任何想法?

如何从菜单切换到更新?

解决方法:

在切换到其他帧之前,您需要切换回内容

driver.switch_to.default_content()
driver.switch_to.frame("update")

# to prove it is working
title = driver.find_element_by_id("L_DOCTITLE").text
print(title)

打印:

Civil Case Inquiry

原文地址:https://codeday.me/bug/20190623/1274051.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐