IFRAME是HTML标签,作用是文档中的文档,或者浮动的框架(FRAME)。iframe元素会创建包含另外一个文档的内联框架(即行内框架)。 目录 1、分析网页源代码 2、编写程
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文件中的同级目录中,才可以正常运行,否则可能出现一个浏览器驱动加载异常等错误信息。