北邮校内网络认证===python脚本实现

问题由来:北邮校内网需要认证,之前都是用网页重定向的方式认证,考虑到服务器可能没有x-window界面,无法顺利完成认证过程。所以就有了以下的故事:

解决办法:python编写脚本实现自动上网认证

运行环境:python3

运行须知:账号和密码需要自己提供,然后改下脚本相应配置就ok,有注释

代码:

#########################################
#
###code by xuxueliang and yanghuahui####
#
##### huahuiyang(at)gmail.com #####
#
########################################
def BuptLogin():
import httplib2
import urllib
import hashlib

###your username and password###
username = '08211578'
pwd = 'huahui********'
###your username and password###

urlstr = "http://10.3.8.150/cgi-bin/do_login"

m = hashlib.md5(pwd.encode("gb2312"))
passwordMd5 = m.hexdigest()[8:24]

data={'username':username,'password':passwordMd5,'drop':0,'type':1,'n':100}
h = httplib2.Http('.cache')
response,content = h.request(urlstr, 'POST', urllib.parse.urlencode(data), headers={'Content-Type': 'application/x-www-form-urlencoded'})
print(content.decode('utf-8'))

BuptLogin()


p.s

第三方开源库httplib2的下载地址以及安装
下载:http://code.google.com/p/httplib2/
安装:python31 setup.py install

你可能感兴趣的:(python)