技术标签: python重启路由器
家里用的是D-link路由器,不超过100块那种。由于路由器年代久远,偶尔会抽风连不了外网,这时就需要重启路由器。一般常规的做法一是断电重启;二是登陆路由器系统设置选项进行重启。有时路由器离电脑太远了不想跑过去断电,登陆路由器又有点烦锁,什么打开浏览器输入用户名密码找到系统设置选项再点击重启。于是就设想写个python脚本,直接双击或者快捷键打开马上重启路由器。
用python来模拟人员登陆路由器设置界面进行重启操作,人工操作其实最重要的就是两步:一是登陆路由器,二是向路由器发送重启的指令。
首先用burp site 抓取登陆路由器的信息
POST /session.cgi HTTP/1.1Host:192.168.5.1Content-Length: 80Origin: http://192.168.5.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36Content-Type: application/x-www-form-urlencoded
Accept:*/*Referer:http://192.168.5.1/Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8
Cookie: uid=PPgJoMGJTN
REPORT_METHOD=xml&ACTION=login_plaintext&USER=admin&PASSWD=123456&CAPTCHA=
再抓取点击重启时发送到路由器的信息
POST /service.cgi HTTP/1.1Host:192.168.5.1Content-Length: 12Origin: http://192.168.5.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36Content-Type: application/x-www-form-urlencoded
Accept:*/*Referer:http://192.168.5.1/tools_system.phpAccept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8
Cookie: uid=S1pAXZvdoE
EVENT=REBOOT
其实整个重启过程就是两个步骤:1登陆2重启
电脑主要就是向路由器发送了上面两段信息
python代码如下:
importrequests
ip='192.168.5.1'username='admin'pwd='123456'header={'Host': ip,'Origin': 'http://'+ip,'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36','Content-Type': 'application/x-www-form-urlencoded','Accept':'*/*','Referer': 'http://'+ip,'Accept-Encoding': 'gzip, deflate','Accept-Language': 'zh-CN,zh;q=0.8'}#登陆时向服务器POST的数据
login={'REPORT_METHOD':'xml','ACTION':'login_plaintext','USER':username,'PASSWD':pwd,'CAPTCHA':''}#重启时向路由器POST的数据
reboot={'EVENT':'REBOOT'}
s=requests.session()#登陆路由器
login=s.post('http://'+ip+'/session.cgi',data=login,headers=header)printlogin.text#重启路由器
reboot=s.post('http://'+ip+'/service.cgi',data=reboot,headers=header)print reboot.text
执行结果如下:
第一段SUCCESS表示登陆成功
第二段OK表示重启成功
In this paper, Eugene M. Izhikevich modeled a small network consisting of 1000 spiking neurons where 80% are excitory and 20% are inhibitory, with 0.1 probability of connection. The connection weigh_polychronization effect
树莓派将DHT11温度湿度上传到阿里云物联网平台1、自定义功能添加的过程就是如此,因为温度是有小数点的,所以用float比较好,其他的比如时间等等也可以使用text类型,视情况而定。定义好之后就可以发布了,当前只有一个温度,还需要添加是湿度。2、环境准备下载Node.js安装mtqq库npm install aliyun-iot-mqtt -S安装阿里云SDKsudo pip install aliyun-python-sdk-coresudo pip install al
最近项目需要用到类似qq的分组功能,网上找了一下是用ExpandableListView或者自定义或者Recycleview来实现的,这里我使用的是ExpandableListView,遇到的问题记录如下:1、ExpandableListView 展开失败的可能原因(ExpandableListView的group里添加button后不能展开的解决方法) 我们就在 getGroup..._expandablelistview点击不展开
写在最前面:GDB是unix相关操作系统中C/C++程序开发必不可少的工具,它的功能之强大,是其它调试器所不能匹敌的。但是,现实的工作中,有很多开发者因为GDB本身入门门槛比较高,而被拒之门,与如此强大的失之交臂。笔者在近两年的C/C++开发工作中,对GDB本身的有一点研究,在这里总结出一系列《手把手教你玩转GDB》的文章,一方面权当是对自己经验的一个总结,一方面也是真的想能够对刚接触GDB的开发
线程管理线程介绍 什么是线程:线程就是进程中负责执行的部分,是进程内部的控制序列,它是轻量级的, 它没有:独立的内存资源,代码段,数据段,堆区,环境变量,命令行参数,文件描述符,信号处理函数,当前工作目录。 它有:线程拥有独立的栈内存,也就是它自己的局部变量 一个进程中可以创建多个线程,一个进程中至少有一个线程(主线程),也可以再创建多个线程。注意:进程是个资源单位,而线程是个执行单位,线程是进程的一部分,进程中正是有了线程才能动起来POSIX线程 1、早期各计算机厂商自己提供是
spring-core中有个ParameterNameDiscoverer就是用来获取参数名的,底层用的是asm解析,但是接口方法的参数名无法得到,即只能是非接口类的方法参数名可以_parameternamediscoverer 结果为空
m_prog.SetRange(0, RDCount);m_prog.SetPos(0);找到一个解决方法,发现是少了一个控件,添加下控件就行DDX_Control(pDX, IDC_PROGRESS1, m_prog);_setrange程序崩溃
1.HTTP与HTTPS的定义HTTP:超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。设计HTTP的初衷是为了提供一种发布和接收HTML页面的方法。HTTPSHTTPS (全称:Hyper Text Transfer Protocol over Secure......_面试http 跟https的区别
linux中module_param简介一. module_param简介 在用户态下编程可以通过main()的来传递命令行参数,而编写一个内核模块则通过module_param() 参数用 module_param 宏定义来声明, 它定义在 moduleparam.h. module_param(name,type,perm); module_
Python CRC16校验、CS 校验算法直接上源码,亲测照搬可用# -*- coding:utf-8 -*-__author__ = 'wangyixiang'class Check(object): #CRC16 def CRC16(self, x, invert): a = 0xFFFF b = 0xA001 for byte in x: a = a >> 8 a ^_python cs校验
cjson库学习_c++ json
文章目录1. 启用2. 端点2.1 实现自定义端点2.2 实现安全的端点2.3 跨域支持3.基于 HTTP 的监控和管理3.1 自定义管理端点路径3.2 自定义管理端口3.3 禁用 HTTP 端点4. 日志记录器5. HTTP 跟踪写在前面本文参考自 Spring-Boot 官方文档,介绍了 actuator 常用特性,关于具体的配置可参考官方文档。在官方文档是如何定义 Spring ..._@readoperation