如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
# 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的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/light_jiang2016/article/details/52474322