您的位置:首页 > 编程语言 > Python开发

python 自动重连wifi windows的方法

2019-01-26 00:11 465 查看

如下所示:

# coding=utf-8
import urllib2
import urllib
from cookielib import CookieJar
import os
import re
import time

class ConnectWeb(object):
def __init__(self):
self.cookiejarinmemory = CookieJar()
self.opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(self.cookiejarinmemory))
urllib2.install_opener(self.opener)
self.username = ""
self.password = ""

def connect_baidu(self): #检测目前是否联网
try:
urllib2.urlopen("http://www.baidu.com", timeout=2)
return 1
except:
return 0

def login(self): #模拟上网验证 验证网页几乎都是不同的,下面附上我们学校的, form表单自己根据情况填,用chrome很容易得到post的url和表单
try:
post_url = ""
form = {"action": "login", "username": self.username, "password": self.password, "ac_id": 4,
"user_ip": "", "nas_ip": "", "user_mac": "", "save_me": 1, "ajax": 1}
fm1 = urllib.urlencode(form)
page = urllib2.urlopen(post_url, fm1).read()
except Exception as e:
self.disconnect()
time.sleep(1)
self.connect_wifi()

def disconnect(self):	# 断开wifi
os.system("netsh wlan disconnect")

def wifis_nearby(self):	# 查询附近wifi
p = os.popen("netsh wlan show all")
content = p.read().decode("GB2312", "ignore")
temp = re.findall(u"(SSID.*\n.*Network type.*\n.*\u8eab\u4efd\u9a8c\u8bc1.*\n.*\u52a0\u5bc6.*\n.*BSSID.*\n)",
content)
result = []
for i in temp:
name = re.findall(u"SSID.*:(.*)\n", i)[0].replace(" ", "")
result.append(name)
return result

def connect_wifi(self, name=None): #连接wifi
os.system("netsh wlan connect name=%s" % name)

def checking(self):	# 一直检测是否有断网,如果断网则重新连接
while 1:
try:
if not self.connect_baidu():
self.login()
except:
pass
time.sleep(10)

if __name__ == "__main__":
test = ConnectWeb()
test.login()

以上这篇python 自动重连wifi windows的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: