python 联机_Python判断网络状态,自动重连校园网!再也不怕自动断网!

原标题:Python判断网络状态,自动重连校园网!再也不怕自动断网!

校园网总是时不时就断开,给远程操控带来了极大不便。写个程序让它自动联网吧!

1.判断网络状态

使用ping命令就可以判断网络通不通了

f4b686abc5d9407b8644ee040e315113.png

可以使用os或者subprocess模块

r = os.system('ping www.baidu.com')

r = subprocess.run('ping www.baidu.com',

stdout=PIPE,

stderr=PIPE,

stdin=PIPE,

shell=True)

因为os会在控制台打印信息,显得比较臃肿,所以我更偏向subprocess~

然后在死循环里面运行就可以了

from time import sleep

from subprocess import run, PIPE

cnt = 1

while True:

r = run('ping www.baidu.com',

stdout=PIPE,

stderr=PIPE,

stdin=PIPE,

shell=True)

if r.returncode:

print('relogin 第{}次'.format(cnt))

# login() 这里写login函数

cnt += 1

else:

print('正常联网')

sleep(60*30) # 每半个小时检查一次

2.联网

这里只讨论校园网,需要登陆的那种。。。。家用网络都不会出现这种自动断开的问题…………

登陆问题本质上就是一个post过程,把账号信息提交到对应网址上就行。

在浏览器端开启调试模式,登陆的同时,在网络这一栏查看一下请求信息。获取到认证网址和上传的数据。

import requests

def login():

url = '认证网址'

data = {

'username': '用户名',

'password': '密码',

# 等等其他直接从调试模式复制的请求数据。

}

requests.post(url, data)

啧,甚至连请求头都不需要,比爬虫要简单多了。返回搜狐,查看更多

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值