python 파충류캠퍼스 네트워크 자동 연결 스 크 립 트 의 튜 토리 얼 을 실현 합 니 다.
요즘 학교 캠퍼스 네트워크 는 어떤 상황 인지 자꾸 끊 기 는 경우 가 많다.끊 길 때마다 웹 브 라 우 저 를 수 동 으로 열 고 계 정 비밀 번 호 를 다시 입력 하고 다시 로그 인 해 야 합 니 다.시스템 문 제 는 해결 할 방법 이 없 지만 캠퍼스 네트워크 에 자동 으로 로그 인 하 는 간단 한 python 스 크 립 트 를 쓸 수 있 습 니 다.매번 끊 긴 후에 임의의 웹 페이지 를 열 면 바로 이 페이지 다.
구현 코드
#-*- coding:utf-8 -*-
__author__ = 'pf'
import time
import requests
class Login:
#
def __init__(self):
# ,
self.every = 10
#
def login(self):
print self.getCurrentTime(), u" ..."
url="http://222.24.19.190:8080/portal/pws?t=li"
#
headers={
'Host':"222.24.19.190:8080",
'User-Agent':"Mozilla/5.0 (Windows NT 6.3; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0",
'Accept':"application/json, text/javascript, */*; q=0.01",
'Accept-Language':"zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3",
'Accept-Encoding':"gzip, deflate",
'Referer':"http://222.24.19.190:8080/portal/index_default.jsp",
'Content-Type':"application/x-www-form-urlencoded",
'X-Requested-With':"XMLHttpRequest",
'Content-Length':"291",
'Connection':"close"
}
#
payload={
'userName':'1403810041',
'userPwd':'MTk4NDEy',
'userurl':'http%3A%2F%2Fwww.msn.com%3Focid%3Dwispr&userip=222.24.52.200',
'portalProxyIP':'222.24.19.190',
'portalProxyPort':'50200',
'dcPwdNeedEncrypt':'1',
'assignIpType':'0',
'appRootUrl':'=http%3A%2F%2F222.24.19.190%3A8080%2Fportal%2F',
'manualUrlEncryptKey':'rTCZGLy2wJkfobFEj0JF8A%3D%3D'
}
try:
r=requests.post(url,headers=headers,data=payload)
print self.getCurrentTime(),u' ... '
except:
print("error")
#
def canConnect(self):
try:
q=requests.get("http://www.baidu.com")
if(q.status_code==200):
return True
else:
return False
except:
print 'error'
#
def getCurrentTime(self):
return time.strftime('[%Y-%m-%d %H:%M:%S]',time.localtime(time.time()))
#
def main(self):
print self.getCurrentTime(), u"Hi, "
while True:
self.login()
while True:
can_connect = self.canConnect()
if not can_connect:
print self.getCurrentTime(),u" ..."
self.login()
else:
print self.getCurrentTime(), u" ..."
time.sleep(self.every)
time.sleep(self.every)
login = Login()
login.main()
3.해결 절차우선 가방 을 잡 을 도구 가 필요 합 니 다.제출 한 데이터 와 제출 한 url 주 소 를 캡 처 해 야 합 니 다.여기 서 사용 하 는 것 은 Firefox 브 라 우 저의 httpforx 플러그 인 입 니 다.
Firefox 브 라 우 저 로 로그 인 페이지 를 열 고 httpforx 플러그 인 을 엽 니 다.페이지 에 계 정과 비밀 번 호 를 입력 하고 온라인 을 클릭 한 후 httpforx 에 기 록 된 Method 가 POST 라 는 것 을 주의 하 세 요.우리 가 기록 해 야 할 것 은 POST Data 의 userName 과 userPwd 입 니 다.Headers 의 데이터 입 니 다.POST 가 도착 한 URL 주소 도 있 습 니 다.
그림:
python 의 requests 라 이브 러 리 를 사 용 했 습 니 다.
가 져 온 URL 주소,userName,userPwd,Headers 를 코드 에 해당 하 는 위치 에 입력 합 니 다.
그림 과 같이 python 프로그램 을 직접 실행 할 수 있 습 니 다.
또는 pyinstaller 라 이브 러 리 로 exe 파일 을 만 들 고 실행 할 수 있 습 니 다.그림:
총화
나 는 프로그램 이 10s 간격 으로 인터넷 을 연결 할 수 있 는 지 확인 할 수 있 도록 고정 순환 을 설정 했다.연결 할 수 있 으 면'모든 정상'을 출력 한 다음 에 순환 을 하고 연결 할 수 없 으 면'인터넷 이 끊 겼 다'를 출력 한 다음 에 다시 연결 할 수 있다.우 리 는 프로그램 설정 에 대해 자동 으로 시작 할 수 있다.이렇게 되면 켜 도 더 이상 수 동 으로 인터넷 을 연결 할 필요 가 없다.
이상 이 python 파충류캠퍼스 네트워크 자동 연결 스 크 립 트 를 실현 하 는 튜 토리 얼 은 바로 편집장 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.여러분 께 참고 가 되 고 저희 도 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로마 숫자를 정수로 또는 그 반대로 변환그 중 하나는 로마 숫자를 정수로 변환하는 함수를 만드는 것이었고 두 번째는 그 반대를 수행하는 함수를 만드는 것이었습니다. 문자만 포함합니다'I', 'V', 'X', 'L', 'C', 'D', 'M' ; 문자열이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.