Python +selenium 实现自动校园网页登录 (Firefox)

Posted horizon08

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python +selenium 实现自动校园网页登录 (Firefox)相关的知识,希望对你有一定的参考价值。

目的

通过分析页面,实现校园网自动输入账号密码,点击登录的操作

环境部署

  1. win10 Firefox 87 (64位) python 3.9

  2. 安装selenium

pip install selenium

  1. 安装driver for firefox
    firefox driver下载版本地址:
    https://github.com/mozilla/geckodriver/releases

分析页面

  1. 找到html页面的用户名输入元素,分析逻辑。

  2. 寻找密码输入元素

  3. 分析页面js逻辑
    发现js存在一个even来显示被隐藏的密码框

    所以selenium需要先实行逻辑代码要求的点击之前一个元素来触发显示#pwd的元素

实现逻辑代码

from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium import webdriver
from time import sleep

driver= webdriver.Firefox()


driver.get("http://10.8.2.2")
driver.set_window_size(895, 739)
# 方案一 利用tab自动输入密码后跳转到密码框
# driver.find_element(By.ID, "username").send_keys("user", Keys.TAB,"passwd")


# 方案二 分析代码原理,点击元素后触发原来的js,显示出密码框,之前是隐藏的
driver.find_element(By.ID, "username").send_keys("user")
driver.find_element(By.ID, "pwd_tip").click()
driver.find_element(By.ID, "pwd").send_keys("passwd")
driver.find_element(By.ID, "selectDisname").click()
driver.find_element(By.ID, "_service_2").click()
driver.find_element(By.ID, "loginLink_div").click()

演示视频

传送门

注意

本文仅发布在博客园 Billyme 与CSDN horizen08,不允许转载,如果您在任何地方看见该文,纯属恶意盗用。

以上是关于Python +selenium 实现自动校园网页登录 (Firefox)的主要内容,如果未能解决你的问题,请参考以下文章

python+selenium实现自动登录网页获取信息

python使用selenium模拟点击网页实现自动导入上传文件功能

python使用selenium模拟点击网页实现自动导入上传文件功能

Python实现网页自动化-浏览器查找元素

Python实现网页自动化-浏览器查找元素

智慧校园自动评教全新版摆脱旧版selenium的束缚