该脚本主要用于草滩男子职业技术学院北校区校园网登录(懒人专用)
由于最近一直在使用校园网,感觉联网比较麻烦,连接网络还需要链接wifi然后再登录网页确认登陆信息,烦死了。。。。
# -*-coding:utf-8-*-
import pywifi, time
from pywifi import const
import requests,os
def wifi_connect_status():
wifi = pywifi.PyWiFi()
iface = wifi.interfaces()[0] # acquire the first Wlan card,maybe not
if iface.status() in [const.IFACE_CONNECTED, const.IFACE_INACTIVE]:
print("wifi已连接链接!")
return 1
else:
print("wifi未链接!")
return 0
# 3、扫描wifi:
def scan_wifi(wifiName):
wifi = pywifi.PyWiFi()
iface = wifi.interfaces()[0]
iface.scan()
time.sleep(1)
basewifi = iface.scan_results()
wifiNameArray=[]
for i in basewifi:
wifiNameArray.append(i.ssid)
# print("wifi scan name:{}".format(i.ssid))
# print("wifi device MAC address:{}".format(i.bssid))
if wifiName in wifiNameArray:
print("已找到目标wifi:"+wifiName+"正在连接.")
else:
print("未找到目标wifi:"+wifiName)
return basewifi
# 4、连接指定的wifi:
def connect_wifi(wifiName):
wifi = pywifi.PyWiFi()
ifaces = wifi.interfaces()[0]
# print("local wifi name:"+ifaces.name()) # 输出无线网卡名称
ifaces.disconnect()
time.sleep(3)
profile = pywifi.Profile() # 配置文件
profile.ssid = wifiName # wifi名称
profile.auth = const.AUTH_ALG_OPEN # 不需要密码
#profile.bssid="06:14:4b:72:42:1b" #mac地址
# profile.akm.append(const.AKM_TYPE_WPA2PSK) # 加密类型
# profile.cipher = const.CIPHER_TYPE_CCMP # 加密单元
# profile.key = "2151155511" # wifi密码
ifaces.remove_all_network_profiles() # 删除其它配置文件
tmp_profile = ifaces.add_network_profile(profile) # 加载配置文件
ifaces.connect(tmp_profile)
time.sleep(2)
isok = True
if ifaces.status() == const.IFACE_CONNECTED:
print("wifi 链接成功!")
else:
print("wifi 链接失败!")
time.sleep(1)
return isok
# 5 web登录
def webLogin(username,passwords):
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0",
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8",
"Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",
"Accept-Encoding": "gzip, deflate",
"Content-Type": "application/x-www-form-urlencoded",
"Content-Length": "49",
"Origin": "http://172.18.8.37",
"Connection": "close",
"Referer": "http://172.18.8.37/0.htm",
"Upgrade-Insecure-Requests": "10"
}
data = {
"DDDDD":username+"@xyw",
"upass":passwords,
"0MKKey":'',
"v6ip":'',
}
url1 = "http://172.18.8.37/0.htm"
try:
result = requests.post(headers=headers,url=url1, data=data).text
except Exception as erro:
print("链接异常。。。。")
print(erro)
time.sleep(1)
if "您已经成功登录" in result:
print("网页登录成功。")
else:
print("密码或账号错误,请检查账号与密码是否匹配!!!")
def main():
contentArray=[]
with open(r"login.txt") as file:
for contents in file.readlines():
contentArray.append(contents.strip('\n'))
wifiName = contentArray[0]
username = contentArray[1]
passwords = contentArray[2]
print("链接wifi:"+wifiName)
wifi_connect_status()
scan_wifi(wifiName)
connect_wifi(wifiName)
webLogin(username=username,passwords=passwords)
# time.sleep(5)
os.system("pause")
if __name__ == "__main__":
main()
上面为全部代码,懂编程的小伙伴应该看得到,在代码所在目录下创建一个login.txt文本文件即可
然后运行程序即可。
当然考虑到不懂代码的小伙伴呢,我也打包好了直接运行的程序,不过只做了windows下的可执行程序。
打包好的程序使用展示
创建一个文件夹,把程序放进去,然后按照上面一样,创建一个login.txt文本,把链接wifi名称填上,用户账号以及密码按顺序填上,保存后,直接运行程序就行了,以后连接网络直接运行程序就行了。在运行程序过程中,如果弹出了校园网登录的网页,直接关闭即可。(豪横)
资源下载地址: https://download.csdn.net/download/qq_40646572/86723917
资源不收费,直接下载就行。本人已经设置为免费的了。