预览图:
使用到的库
from selenium import webdriver
import time
F12获取HTML元素后完成登录
# #声明浏览器对象
browser1 = webdriver.Chrome()
# #访问云南民族大学登录页面
browser1.get("http://202.203.158.158/sso/login?service=http%3A%2F%2F202.203.158.158%2Fj_spring_cas_security_check")
time.sleep(3)
# 3秒后完成对input的输入
username_input =browser1.find_element_by_name("username")
username_input .send_keys('学号')
password_input =browser1.find_element_by_name("password")
password_input .send_keys('密码')
登陆后对各个模块进行分析定位
课程表在教务系统里面,所以模拟点击进入教务系统
time.sleep(1)
login_btn =browser1.find_element_by_id("login")
# 点击登录
login_btn.click()
# 登陆后进入教务系统新
time.sleep(7)
# 7秒后打开教务系统
jiaowuxitong =browser1.find_element_by_xpath("/html/body/div[4]/div[2]/div[2]/ul/li[4]").click()
会打开新窗口所以需要用到:
# 获取打开的多个窗口句柄
windows = browser1.window_handles
# 切换到当前最新打开的窗口
browser1.switch_to.window(windows[-1])
在新窗口继续点击课程表
kecheng=browser1.find_element_by_xpath('//*[@id="commonServices"]/div/div[2]/div[1]/div[1]/div').click();
完整代码:
#coding=gbk
from selenium import webdriver
import time
# #声明浏览器对象
browser1 = webdriver.Chrome()
# #访问云南民族大学登录页面
browser1.get("http://202.203.158.158/sso/login?service=http%3A%2F%2F202.203.158.158%2Fj_spring_cas_security_check")
time.sleep(3)
# 3秒后完成对input的输入
username_input =browser1.find_element_by_name("username")
username_input .send_keys('账户')
password_input =browser1.find_element_by_name("password")
password_input .send_keys('密码')
# 模拟点击登录按钮!
# 用id定位
time.sleep(1)
login_btn =browser1.find_element_by_id("login")
# 点击登录
login_btn.click()
# 登陆后进入教务系统新
time.sleep(7)
# 7秒后打开教务系统
jiaowuxitong =browser1.find_element_by_xpath("/html/body/div[4]/div[2]/div[2]/ul/li[4]").click()
time.sleep(2)
# 获取打开的多个窗口句柄
windows = browser1.window_handles
# 切换到当前最新打开的窗口
browser1.switch_to.window(windows[-1])
kecheng=browser1.find_element_by_xpath('//*[@id="commonServices"]/div/div[2]/div[1]/div[1]/div').click();
# 获取结束