如下所示:
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