每次登陆校园网时都要手动进行登陆,着实有点麻烦。
今天为大家带来一款浏览器的插件帮助我们自动登陆校园网:
为什么会诞生这篇文章?
网上查询自动化登陆校园网,貌似都是通过抓到学校的登陆包,并在开机时自动发送登陆包达到自动登陆校园网的操作。但这个操作十分不友好,首先各个学校的登陆流程就不一样,不可能存在一个固定的抓包方式,总会存在些许差异,这对小白来说非常不友好。其次,有些学校存在一些验证机制(token,时间戳等),如果发送的数据包不符合条件自然就会失败,于是我就想有没有更简单的方式实现这种操作。通过网上查询了解到selenium这款自动化工具,以记录操作者操作的方式进行自动化登陆,更为简单和方便,于是分享给大家。
什么是Selenium IDE:
它是一款测试自动化的插件,其中的录制功能就是今天谈到的重点。它能够根据操作者的操作流程生成相应的代码,即使是我这样的小白也能很快上手。
运行环境:
1、存在C#,java,python,rust其中之一的环境
2、存在对应语言的selenium包
这里以python举例:
装有python环境并有selenium包,如果不存在pyhton环境可以看看大佬的文章:
Python安装超详细教程
如果不存在selenium包可以通过以下命令安装:
pip install selenium
以上命令的pip是python语言对应的包管理器,通过包管理器安装selenium包
Selenium IDE的安装:
以火狐浏览器为例,首先点击右上角的按钮,再点击扩展和主题
进入后在搜索框输入selenium,随后点击搜索
下图中的蓝色图标就是selenium IDE
点进去后,点击添加到Firefox
此时右上角会有弹窗出现,点击添加
之后我们就能在顶部的工具栏找到selenium IDE插件啦(标有Se的灰色图标)
Selenium IDE的使用:
我们点击灰色图标会弹出以下界面,选择第一个,Record a new test in a new project。
下图这个界面是选择项目名称的界面,随便填,填完点击OK
随后的界面是选择我们要操作的网页界面,填写网页的URL,填完点击START RECORDING
我选择要操作的界面是校园登陆界面
随后按照登陆校园网的流程,输入学号、密码再选择对应的运营商就行了。
这一步会出现一点BUG,输入学号和密码时type类型可能是空的。这里的type类型是selenium插件操作时填入的值
如果是空的我们自己输入就行了,其中的Value值就是我们应该填的学号或密码,具体是学号还是密码要根据上个click操作选择的是学号框还是密码框。
这里推荐等出现登陆成功的界面后,再点击一个空白区域,再关闭浏览器。不然按完登陆后再直接关闭浏览器可能会出现问题
录制完后,切换到selenium弹出的界面,点击右上角红色图标停止录制。
点击图标后又会出现一个界面,这个界面选择保存的名称
我们可以点击下图的图标进行,查看操作是否成功,第二个图标是测试当前项目的操作。第三个图标是逐步测试,可以更好的找出问题所在。
再左侧我们可以点击我们创建的项目名称,导出文件,对应的选项是Export
之后再选择要导出的文件类型,我这里选择的是python类型,点击EXPORT导出就行了。
导出文件后,会出现.part文件,我们用记事本打开
会出现类似下图的代码(为防止我本人的信息泄露,我这里以访问百度进行搜索的操作为例)。
以上代码只提供了类和其中的一些方法,是测试用的代码。我们要把它转化成通过main函数执行的形式,这里直接请chatgpt大神帮我们修改,当然如果不嫌麻烦可以自己手动进行更改。
转化后的代码类型如下图
此时调用的是远程geckodriver,联网才能正常使用。可以自己下载geckodriver,并指明路径。
需要导入一个包,并把driver=webdriver.Firefox()这一行代码进行修改。
例如:
1、导入包
from selenium.webdriver.firefox.options import Options
2、设置geckodriver路径
service = Service(executable_path='F:\geckodriver.exe') //F:\geckodriver.exe替换为你下载的geckodriver路径
3、启动浏览器
driver = webdriver.Firefox(service=service,options=options)
这样就操作完了,把全部代码复制到一个py文件里就行了。
开机自启动操作:
这里借用大佬的文章,windows配置开机自启动软件或脚本
Win+R键打开运行对话框,输入shell:startup,并点击确定按钮。这一步操作是打开Windows系统的自启动程序的文件夹。
随后在该文件夹中右键创建txt文件,输入以下信息(//后面的内容是注释,不必输入进去):
F: //这一步是将cmd的操作目录切换至F盘,因为我保存的py文件在F盘,所以选择切换到F盘
cd F:\python_test //这一步操作是将cmd的操作目录切换至py文件所在的工作目录。大家文件保存的地方不一样可以自行更改
python test_123456.py //启动test_123456.py文件,文件名根据自己所保存的文件名自行更改
exit //退出cmd命令行,不然会一直有个黑框框(cmd命令行界面)显示在桌面
之后ctrl+s保存以上信息,切换至自启动文件夹,把.txt后缀变更为.bat后缀就可以了,之后我们自启动就会执行bat文件里的内容。
作者本人只是出于兴趣了解selenium,对selenium本身不是很了解,如果文章存在错误的地方,欢迎您的指正。希望这篇文章可以帮助到您。
版权归原作者 catlantern 所有, 如有侵权,请联系我们删除。