'''
@author => 戒酒的李白染
@date => 2020-10-22
@description => 校园网的登录与下线
@language => python3.8.3
'''
import requests, re,json
from urllib import parse
class Internet():
def __init__(self, userId, password,service):
self.userId = userId
self.password = password
self.service = service
self.url = "http://10.240.0.45/"
self.main()
def decode(self,string):
return parse.unquote(string)
def encode(self,string):
return parse.quote(string)
def getqueryString(self):
url = "http://192.168.0.1"
GetResult = requests.get(url).text
queryString = re.findall(r"index.jsp\?(.+?)\'", GetResult, re.S)
if len(queryString)!=0:
return queryString[0]
else:
return 0
def internetLogin(self,queryString):
url = self.url+"eportal/InterFace.do?method=login"
data = {
"userId": self.userId,
"password": self.password,
"service": self.encode(self.service),
"operatorPwd": "",
"operatorUserId": "",
"validcode": "",
"passwordEncrypt": "false",
"queryString": self.getqueryString(),
}
connect = requests.post(url=url, data=data).text
connectResult = json.loads(connect)
return connectResult
def internetLogout(self):
LogoutUrl = "http://10.240.0.45/eportal/InterFace.do?method=logout"
RedirectUrl = requests.get(self.url).url
userIndex = re.findall(r"userIndex=(.*)",RedirectUrl,re.S)
if len(userIndex) !=0:
data = {
"userIndex":userIndex[0]
}
ResultPost = requests.post(url=LogoutUrl,data=data).text
return json.loads(ResultPost)
else:
return 0
def mainLogin(self):
queryString = self.getqueryString()
if queryString==0:
print("网络已认证")
else:
ConnectResult = self.internetLogin(queryString)
print("认证操作:"+ConnectResult["result"])
def mainLogout(self):
PostLogout = self.internetLogout()
if PostLogout==0:
print("下线失败")
else:
print("下线操作:"+PostLogout["result"])
def main(self):
self.mainLogin() #登录
# self.mainLogout() #下线
Internet("这里填校园网账号","这里填校园网密码","这里填校园网的服务选项")
python3扬州大学校园网认证登录与下线
最新推荐文章于 2022-10-25 22:17:15 发布