校园网自动登录程序

最近趁校园网免费在抓论文,然而脸黑,老被校园网踢,爱过。

于是写了一个保驾护航的自动登录~

Step1:分析包

之前我天真的以为里面只要写了用户名和密码就行= = 啊我要找时间补计算机网络。。

在浏览器装了FireBug插件,手动登录了一下抓下了包。

分析一下:

1.在网络选项下,看到发送的地址是,鼠标移上去可以看到具体地址,不好截图就不截了。

2.展开它,在请求头信息里可以看到一堆东西,这里只需要Host 和Referer就差不多了

3.在Post栏,看到具体发送的参数

然后基本信息就准备好了。

Step2:检测是否有网络连接

打开一个网页看能否打开,由于在未登录状态打开网页会被定向到登录的页面(也可能直接打不开),所以先检测是否能打开,如果是的话,分析页面元素检测Title是否一致。

在这里微软大法好用了Bing当作测试页面=w=

Step3:构建自己的数据包并发送

这里用Python大法好。

具体看代码

 1 import os
 2 from bs4 import  BeautifulSoup
 3 from urllib.parse import urlencode
 4 from urllib.request import urlopen
 5 from urllib.request import build_opener
 6 from urllib.request import HTTPCookieProcessor
 7 from urllib.request import Request
 8 import http.cookiejar
 9 import time
10 def CheckLink():
11     url = ‘http://cn.bing.com‘
12
13     try:
14         html = urlopen(url).read().decode("utf-8")
15     except:
16         return False
17
18     bsObj = BeautifulSoup(html)
19     print (bsObj.title)
20     if(bsObj.title == None or bsObj.title.get_text() == ‘登录‘):
21         return False
22     return True
23
24
25 def MakeLink():
26
27     url = ‘http://10.0.0.55:801/include/auth_action.php‘
28     #set Post paras
29     userData = {
30         "action":"login",
31         "username":"",
32         "password":"",
33         "ac_id" : "1",
34         "user_ip":"",
35         "nas_ip":"",
36         "user_mac":"",
37         "save_me":"1",
38         "ajax":"1"
39     }
40     postData = urlencode(userData).encode(encoding=‘utf-8‘)
41     headers = {
42         "host":‘10.0.0.55:804‘,
43         "Referer":‘http://10.0.0.55:801/srun_portal_pc.php‘
44     }
45     cookiejar = http.cookiejar.CookieJar()
46
47     #open in glabal
48     opener = build_opener(HTTPCookieProcessor(cookiejar))
49
50     #get cookiejar
51     req = Request(url, postData, headers)
52     result = opener.open(req)
53     print (result.read())
54
55     return
56
57 def main():
58     while(True):
59         if(CheckLink() == False):
60             print (‘outline‘)
61             MakeLink()
62         else: print(‘inline‘)
63         time.sleep(60)
64
65 if __name__ == ‘__main__‘:
66     main()

时间: 2024-08-11 18:43:57

校园网自动登录程序的相关文章

通过VBS编写自动输入账号和密码、自动登录程序的脚本

通过VBS编写自动输入账号和密码.自动登录的脚本. 请查看附件: 附件中是以QQ为例. 这个脚本的好处是: 1.可以用于开机自动登录 2.可以用于运维人员自动登录一些程序 3.可以用于......

linux启动后自动登录并运行自定义图形界面程序

在<Ubuntu CTRL+ALT+F1~F6 进入命令模式后不支持中文显示的解决办法>一文中提到linux启动在以后运行一个独占显示器的图形程序的两种办法. 1.不启动xserver,使用fb或者directfb图形模式: 2.启动xserver不启动桌面系统. 第一种方法性能并不一定高,因为支持fb的显卡驱动可能找不到,就是用上显卡驱动了也需要CPU大量参与.另外如果用这种方式可供选择的图形程序开发技术就受限了.所以这种方法通常用在嵌入式环境下. 第二种方法只要显卡驱动了,CPU就能得到解

Linux Server 开机自动登录和自启动程序设置

1. 概述 linux服务器已被广泛使用,大多情况下都可以稳定的运行.但是不排除因其他外在因素例如断电等原因而导致的关机.如果在没有运维或者运维临时无法及时维护时,那么server的自启动程序就显得尤为重要了. 2. Linux Server设置 2.1 供电自启动 主机在意外情况下断电后关闭,当恢复供电希望主机自行启动.可在主机BIOS中进行设置,一般机器都会支持.不同的机型可能描述不太一样.一般在电源管理或者Power Manager中进行设置. 2.2 以某个用户身份自动登录 可以通过修改

[转] windows 上用程序putty使用 ssh自动登录Linux(Ubuntu)

需求: 在Win7电脑上使用putty(一种ssh客户端)连接Ubuntu 工具: puttygen.exe 和 putty.exe 第一步:生成密匙 运行puttygen.exe,选择需要的密匙类型和长度,使用默认的SSH2(RSA),长度设置为1024就可以了. passphrase可以为空,免得登录时还是要输入一次密码. 点击Save private key 按钮保存私匙,例如key.ppk: 复制puttygen public Key 文本框内的内容到剪贴板中. 第二步:上传密匙 用Pu

[分享]在ubuntu9.10下实现开机自动登录并运行自己的图形程序

在ubuntu9.10下实现开机自动登录并运行自己的图形界面程序(本人接触ubuntu时日不长,文中一些说法难免有错误和疏漏之处,还请大家不吝批评指正.)实现步骤分以下三大步:1. 实现ubuntu文本形式启动2. 实现ubuntu自动登录3. 实现程序自动运行 一.文本模式启动:两种方法异曲同工:(1) 直接修改/etc/grub/grub.cfg找到类似下面的代码:53 linux /boot/vmlinuz-2.6.31-14-generic root=UUID=0f31592d-e741

[Python爬虫] Selenium实现自动登录163邮箱和Locating Elements介绍

目录(?)[+] 前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时继续介绍Selenium+Python官网Locating Elements部分内容.        希望该篇基础性文章对你有所帮助,如果有错误或不足之处,请海涵~        [Python爬虫] 在Windows下安装PhantomJS和CasperJS及入门介绍(上)        

windows2008r2设置开机后用户自动登录

因为有些程序在计划任务中设置开机就启动以后,当登录帐号时无法将已经运行的程序切换到前台进行操作(就是无法在桌面上显示软件的界面,比如我这里需要使用的<vm虚拟机>.<v-box虚拟机>和<typsoft ftp服务器>这几个软件),想了一下,感觉可以通过设置开机自动登录帐号后再启动程序的方法解决,于是在网上找了下设置的方法: 设置开机自动用户登录 开始>运行 control userpasswords2 ,出现(如图1),选择要自动登录的用户账户,然后将"

关于新浪微博注销后自动登录的问题

最近程序中需要做分享功能,腾讯的的OK,但新浪的注销后,再次点击时,本来应该进入到登录的授权页面,webview形式出现.但结果每次再进入时,会自动登录上次注销的号. 查了相关资料后,发现有两种解决办: 1: 因为只清除了登录数据,但是uiwebview的cookie仍然保留在本地,所以需要清除uiwebview的cookie内容,清除方式如下: NSHTTPCookie *cookie;    NSHTTPCookieStorage *storage = [NSHTTPCookieStorag

estore商城案例(三)------Filter过滤器:自动登录&amp;权限管理

前面写好了用户登录\注册\添加商品的功能模块.下面写一下对于这些功能模块的相关过滤器---自动登录与权限管理: 一.自动登录: 业务逻辑是这样的:jsp登录页面有个“自动登录选项”,如果登录这勾选了,那么在serlvet程序中则会额外的生成一个保存用户名和密码的cookie,然后每次用户向服务器发送请求时,Filter过滤器都会先判断用户的登录状态(session),如果已经登录那么无需做出受任何操作直接放行,如果没有登录(无session),那么这时体现自动登录功能作用的时候到了,先获取自动登