php实现登录tplink WR882N获取IP和重启的方法


Posted in PHP onJuly 20, 2016

本文实例讲述了php实现登录tplink WR882N获取IP和重启的方法。分享给大家供大家参考,具体如下:

服务器一上传大数据tplink WR882N就容易卡住, 然后上不了网. 打算在服务器定时检测, 如发现连续10次无法访问指定网站, 则自动执行重启操作(该部分未实现, 请自己添加).

gg了一圈发现只有旧版的tplink登录脚本, 试了很久没成功 ? 家里的tplink 740N倒是没问题.

于是只能直接写了, 简单的脚本如下, 可自己扩展

该脚本只适用WR882N, 其他型号未测试.

<?php
// TPLINK WR882N 管理脚本
function getContent($url)
{
  // 解悉url
  $temp = parse_url($url);
  $query = isset($temp['query']) ? $temp['query'] : '';
  $path = isset($temp['path']) ? $temp['path'] : '/';
  $header = array (
    "POST {$path}?{$query} HTTP/1.1",
    "Host: {$temp['host']}",
    "Content-Type: text/xml; charset=utf-8",
    'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'Cookie: Authorization=Basic ' . base64_encode("admin:admin"),  // 注意这里的cookie认证字符串
    "Referer: http://{$temp['host']}/",
    'User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1)',
    "Content-length: 380",
    "Connection: Close"
  );
  $curl = curl_init(); // 启动一个CURL会话
  curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址
  curl_setopt($curl, CURLOPT_HTTPHEADER, $header); //设置头信息的地方
  curl_setopt($curl, CURLOPT_TIMEOUT, 60); // 设置超时限制防止死循环
  curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回
  $content = curl_exec($curl); // 执行操作
  curl_close($curl);
  return $content;
}
function getIp(){
  $content = getContent("http://192.168.1.1/userRpm/StatusRpm.htm");
  preg_match('/wanPara=new Array\((.+?)<\/script>/s',$content,$all);
  $ip = "0";
  if(!empty($all[1])){
    $data = trim($all[1]);
    $data = str_replace("\r\n","",$data);
    $data = explode(",",$data);
    $ip = str_replace('"','',$data[2]);
    $ip = trim($ip);
  }
  return $ip;
}
function reboot(){
  $url = "http://192.168.1.1/userRpm/SysRebootRpm.htm?Reboot=%D6%D8%C6%F4%C2%B7%D3%C9%C6%F7";
  getContent($url);
}
$info = getIp();
echo $info;

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP调用MySQL的存储过程的实现代码
Aug 12 PHP
PHP中根据IP地址判断城市实现城市切换或跳转代码
Sep 04 PHP
php用header函数实现301跳转代码实例
Nov 25 PHP
PHP原生函数一定好吗?
Dec 08 PHP
php异常处理方法实例汇总
Jun 24 PHP
使用php-timeit估计php函数的执行时间
Sep 06 PHP
PHP计算数组中值的和与乘积的方法(array_sum与array_product函数)
Apr 01 PHP
Windows2003下php5.4安装配置教程(IIS)
Jun 30 PHP
ThinkPHP中Widget扩展的两种写法及调用方法详解
May 04 PHP
利用Homestead快速运行一个Laravel项目的方法详解
Nov 14 PHP
Laravel 队列使用的实现
Jan 08 PHP
laravel excel 上传文件保存到本地服务器功能
Nov 14 PHP
PHP的AES加密算法完整实例
Jul 20 #PHP
postfixadmin忘记密码后的修改密码方法详解
Jul 20 #PHP
PHP简单日历实现方法
Jul 20 #PHP
分析PHP中单双引号的误区和双引号小隐患
Jul 19 #PHP
PHP实现数组array转换成xml的方法
Jul 19 #PHP
smarty循环嵌套用法示例分析
Jul 19 #PHP
PHP中Socket连接及读写数据超时问题分析
Jul 19 #PHP
You might like
php面向对象全攻略 (十六) 对象的串行化
2009/09/30 PHP
php获取图片信息的方法详解
2015/12/10 PHP
jQuery 性能优化指南(2)
2009/05/21 Javascript
jquery ajax同步异步的执行最终解决方案
2013/04/26 Javascript
jQuery移动web开发中的页面初始化与加载事件
2015/12/03 Javascript
javascript数组去重小结
2016/03/07 Javascript
JS 动态判断PC和手机浏览器实现代码
2016/09/21 Javascript
JS实现的tab切换选项卡效果示例
2017/02/28 Javascript
JS实现课堂随机点名和顺序点名
2017/03/09 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
2017/05/11 Javascript
vue2.0 实现页面导航提示引导的方法
2018/03/13 Javascript
JS实现二维数组横纵列转置的方法
2018/04/17 Javascript
JS中‘hello’与new String(‘hello’)引出的问题详解
2018/08/14 Javascript
vue.js 图片上传并预览及图片更换功能的实现代码
2018/08/27 Javascript
微信小程序模板消息限制实现无限制主动推送的示例代码
2019/08/27 Javascript
vue项目中锚点定位替代方式
2019/11/13 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
2020/11/01 Javascript
vue+element实现动态加载表单
2020/12/13 Vue.js
用Python脚本来删除指定容量以上的文件的教程
2015/05/04 Python
Python实现给文件添加内容及得到文件信息的方法
2015/05/28 Python
python:pandas合并csv文件的方法(图书数据集成)
2018/04/12 Python
Python的条件表达式和lambda表达式实例
2019/01/31 Python
Python实现EXCEL表格的排序功能示例
2019/06/25 Python
pip安装python库的方法总结
2019/08/02 Python
python Pillow图像处理方法汇总
2019/10/16 Python
python设置环境变量的作用整理
2020/02/17 Python
基于spring boot 日志(logback)报错的解决方式
2020/02/20 Python
解决python3.x安装numpy成功但import出错的问题
2020/11/17 Python
python里反向传播算法详解
2020/11/22 Python
波兰品牌鞋履在线商店:Eastend.pl
2020/01/11 全球购物
大学生军训感想
2014/02/16 职场文书
大学生职业生涯规划书汇总
2014/03/20 职场文书
银行金融服务方案
2014/06/11 职场文书
新教师培训心得体会
2014/09/02 职场文书
2015年助残日活动总结
2015/03/27 职场文书
开学典礼观后感
2015/06/15 职场文书