Loading

python selenium 如何选中iframe中的元素?

IFRAME是HTML标签,作用是文档中的文档,或者浮动的框架(FRAME)。iframe元素会创建包含另外一个文档的内联框架(即行内框架)。

目录

1、分析网页源代码

2、编写程序代码


1、分析网页源代码

 分析代码可以得知,这个登录看是内嵌了一个iframe,我们如何通过利用python selenium 进行模拟登录呢?

2、编写程序代码

在这里我们主要用到一个driver.switch_to.frame("iframeID");方法,它可以切换到iframe框架内。

在切换前有一个最大加载时间,driver.implicitly_wait(30)也很重要,它的作用的是在设定时间范围内(单位:秒),如果页面加载完成,再进行下一步操作,如果网页响应时间比较久的,这个时间可以设定稍微久一点。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
from selenium import webdriver

if __name__ == '__main__':
    # 加载chrome浏览器驱动
    driver = webdriver.Chrome()
    # 打开网页地址
    driver.get('http://jzjxjy.chinahrt.com/')  
    # 最大等待时间30s
    driver.implicitly_wait(30)
    # 切换iframe框架
    driver.switch_to.frame("iframe")
    # 输入账号
    driver.find_element_by_name("userName").send_keys("422421197203060819")
    # 输入密码
    driver.find_element_by_name("password").send_keys("123456")
    # 立即登录
    driver.find_element_by_id("loginbtn").click()

提示,运行代码前,需要将与浏览器版本对应的Chrome浏览器驱动放置在python文件中的同级目录中,才可以正常运行,否则可能出现一个浏览器驱动加载异常等错误信息。 

posted @ 2021-10-10 13:50  Roc-xb  阅读(35)  评论(0)    收藏  举报

易微帮源码


易微帮官网