Python3控制路由器——使用requests重启极路由.py


Posted in Python onMay 11, 2016

通过本文给大家介绍Python3控制路由器——使用requests重启极路由.py的相关知识,代码写了相应的注释,以后再写成可以方便调用的模块。

用fiddler抓包可以看到很多HTTP头,经过尝试发现不是都必须的。

'Upgrade-Insecure-Requests':1,#必要项,值为1

'Content-Type':'application/x-www-form-urlencoded',#必要项

否则取不到服务顺响应返回的Set-Cookie

"""
python3控制路由器--使用requests重启极路由.py
2016年5月10日 06:20:56 codegay
参考资料requests文档:
http://cn.python-requests.org/zh_CN/latest/
"""
import requests
import re
url="http://192.168.199.1/cgi-bin/turbo/admin_web"
#用fiddler抓包可以看到很多HTTP头,经过尝试发现不是都必须的。
#'Upgrade-Insecure-Requests':1,#必要项,值为1
#'Content-Type':'application/x-www-form-urlencoded',#必要项
#否则取不到服务顺响应返回的Set-Cookie
head={#'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'Upgrade-Insecure-Requests':1,
'Content-Type':'application/x-www-form-urlencoded',
#'User-Agent':'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36',
#'DNT':1,
#'Referer':'http://192.168.199.1/cgi-bin/turbo/admin_web'
}
s=requests.Session()
r=s.post(url,data="username=admin&password=你的密码",headers=head)
txt=r.text
stok=re.findall('''stok=(\w+).+?reboot''',txt)[0]
#stok会得到类似的字符串
#stok='1f7a2b7034c67401a20d4ce0cdde7c7d'
print(stok)
rooturl='http://192.168.199.1/cgi-bin/turbo/'
stokurl=rooturl + ';stok=%s/api/system/reboot' % stok
#带着成功登录后的cookies,并且找出stok,拼成下如URL get请求一次就可以完成路由的重启
#stokurl='http://192.168.199.1/cgi-bin/turbo/;stok=78e3516718ff32250fa796ed4462188c/api/system/reboot'
reboot=s.get(stokurl) #重启

关于本文给大家介绍的Python3控制路由器——使用requests重启极路由.py的知识就给大家介绍这么多,本文代码内容附有注释,大家在参考过程中有任何疑问欢迎给我留言,小编会及时回复大家的,在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python利用pyHook实现监听用户鼠标与键盘事件
Aug 21 Python
在Python中使用sort()方法进行排序的简单教程
May 21 Python
详解Python使用simplejson模块解析JSON的方法
Mar 24 Python
python万年历实现代码 含运行结果
May 20 Python
python中的迭代和可迭代对象代码示例
Dec 27 Python
python多维数组切片方法
Apr 13 Python
Pycharm 操作Django Model的简单运用方法
May 23 Python
Python使用sort和class实现的多级排序功能示例
Aug 15 Python
python3人脸识别的两种方法
Apr 25 Python
pandas-resample按时间聚合实例
Dec 27 Python
TensorFlow查看输入节点和输出节点名称方式
Jan 04 Python
python从PDF中提取数据的示例
Oct 30 Python
Python3使用requests登录人人影视网站的方法
May 11 #Python
在Django中进行用户注册和邮箱验证的方法
May 09 #Python
Python数据类型详解(三)元祖:tuple
May 08 #Python
Python数据类型详解(二)列表
May 08 #Python
Python数据类型详解(一)字符串
May 08 #Python
Python常用知识点汇总
May 08 #Python
Python对list列表结构中的值进行去重的方法总结
May 07 #Python
You might like
探讨如何在php168_cms中提取验证码
2013/06/08 PHP
常用js脚本
2006/12/03 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
打印json对象的内容及JSON.stringify函数应用
2013/03/29 Javascript
jquery ready(fn)事件使用介绍
2013/08/21 Javascript
jquery下div 的resize事件示例代码
2014/03/09 Javascript
js禁止页面刷新与后退的方法
2015/06/08 Javascript
jQuery UI Grid 模态框中的表格实例代码
2017/04/01 jQuery
Require.JS中的几种define定义方式示例
2017/06/01 Javascript
React Native 搭建开发环境的方法步骤
2017/10/30 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
ES6中字符串的使用方法扩展
2019/06/04 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
2019/07/19 Javascript
Vue实现验证码功能
2019/12/03 Javascript
[00:37]DOTA2上海特级锦标赛 Secert 战队宣传片
2016/03/03 DOTA
[00:52]玛尔斯技能全介绍
2019/03/06 DOTA
web.py获取上传文件名的正确方法
2014/08/26 Python
python实现决策树分类算法
2017/12/21 Python
学生信息管理系统Python面向对象版
2019/01/30 Python
python 实现检验33品种数据是否是正态分布
2019/12/09 Python
python 利用已有Ner模型进行数据清洗合并代码
2019/12/24 Python
tensorflow求导和梯度计算实例
2020/01/23 Python
通过python调用adb命令对App进行性能测试方式
2020/04/23 Python
详解Open Folder as PyCharm Project怎么添加的方法
2020/12/29 Python
台湾森森购物网:U-mall
2017/10/16 全球购物
匈牙利最大的健身制造商和销售商:inSPORTline
2018/10/30 全球购物
超市实习总结自我鉴定
2013/09/19 职场文书
金融专业应届生求职信
2013/11/02 职场文书
应届大学生的推荐信
2013/11/20 职场文书
马云北大演讲完整版:真心话,什么才是阿里的核心竞争力?
2014/04/04 职场文书
驾驶员安全责任书
2014/07/22 职场文书
学党史心得体会
2014/09/05 职场文书
学习普通话的体会
2014/11/07 职场文书
2014年工商所工作总结
2014/12/09 职场文书
创业计划书之服装
2019/10/07 职场文书
vue判断按钮是否可以点击
2022/04/09 Vue.js