功能:在教务系统登录界⾯实现⾃动输⼊学⽣账号密码,避免每次重复⼿动输⼊ 个⼈信息在本地运⾏,明⽂存储密码。可同时起到备忘作⽤(其实是不会加密解密)(请注意尽量不要让不信任的⼈接触你的电脑,防⽌个⼈信息泄露)。
油候脚本使⽤js代码实现。测试⼯作在TGU(天津⼯业⼤学)教务处实现。
油猴脚本头部注释⽂档部分:
// ==UserScript==
// @name TGU_教务系统⾃动输⼊信息 By Limonene0x
// @namespace limonene0x
个人信息系统// @version 0.1
/
/ @description 在教务系统要求复杂密码后实现⾃动输⼊学⽣账号密码,避免每次重复⼿动输⼊,本地运⾏明⽂存储密码备忘(请注意尽量不要让不信任的⼈接触你的电脑,防⽌个⼈信息泄露)。// @author Limonene0x
// @match jwxs.tjpu.edu/login
// @icon jwxs.tjpu.edu/img/icon/favicon.ico
// @homepage github/limonene0x
// @license MIT
// @grant none
// ==/UserScript==
name是脚本的名称
namespace尚不明确
version是脚本的版本号
description是脚本说明
author是作者名
match是脚本匹配的域名,可以使⽤*作为通配符
icon是脚本的图标
homepage是脚本的发布主页
license是脚本遵循的开源协议
grant尚不明确
注释⽂档部分前后使⽤// ==UserScript==与// ==/UserScript==包围起来
匹配的⽹址可以⾃⼰设定到本校的教务系统。
开发过程
在⽬标⽹页打开开发者检查⼯具,(或直接)按Ctrl+Shift+C开始选择元素,将⿏标移动到要⾃动填充的⽤户名框上单击,会⾃动跳转到⽬标代码处 这⾥因为元素的唯⼀编码是id因此我们选择使⽤id来定位元素。
js中使⽤document.querySelector()来选择元素,使⽤#来表⽰id,因此查本⽰例中的id="input_username"的语句就是document.querySelector('#input_username')
同理密码输⼊框即可使⽤document.querySelector('#input_password')来查
程序设计的⽬的是把我们⾃⼰的信息⾃动填⼊对应⽂本框,因此预先设置两个变量存放要输⼊的学号信息和密码
var stu_num = '1234567890' // 学⽣学号(请在单引号内填写)
var stu_pwd = 'aBcD_1234.' // 学⽣密码(请在单引号内填写)
考虑到其他页⾯中脚本也可能会偶然被加载,因此判断当没有input_username元素时直接返回,不做操作
if(document.querySelector('#input_username') == null)
{
return;
}
在正确的页⾯中即可将变量中的我们的个⼈信息输⼊到对应⽂本框中
document.querySelector('#input_username').value = stu_num
document.querySelector('#input_password').value = stu_pwd
到此即可实现个⼈信息的⾃动填充。
还可以略加⼀个判断,提⽰是否弹出填充成功提⽰,并预先设置是否启⽤。var over_notice = 0 // 填写完毕提⽰框:1为弹出提⽰;0为不弹出提⽰
if(over_notice != 0)
{
setTimeout(function()
{
alert("您的学号和密码已经输⼊完毕,请填写验证码登录");
}, 1000);
}