perl 登陆电信猫
登陆电信猫: use LWP::UserAgent;
use HTTP::Date qw(time2iso str2time time2iso time2isoz);
use Net::Ping;
use Socket;
use Net::SMTP;
use LWP;
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Cookies;
use HTTP::Headers;
use HTTP::Response;
use Encode;
use URI::Escape;
use URI::URL;
use Data::Dumper;
my $ua = LWP::UserAgent->new;
$ua->timeout(5);
$ua->env_proxy;
$ua->agent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0");
my $cookie_jar = HTTP::Cookies->new(
file=>'lwp_cookies.txt',
autosave=>1,
ignore_discard=>1);
$ua->cookie_jar($cookie_jar); my $url='http://192.168.1.1/'; my $response = $ua->get($url); if ($response->is_success) { $var= $response->content;
};
# print $var; #document.getElementById("Frm_Logintoken").value = "1817837";
if ($var =~/.*Frm_Logintoken.*value\s+=\s+"(.*?)".*/)
{print "\$1 is $1\n";
$Logintoken=$1;
}; my $login_url='http://192.168.1.1/getpage.gch?pid=1001&logout=1';
my $res = $ua->post(
$login_url,
{
'Username' => 'useradmin',
'Password' => 'pddgf',
'Frm_Logintoken' => $Logintoken, },
[
'pid' => '1001',
'logout' => "1" ],
'User-Agent'=>'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0',
'Host'=>'192.168.1.1',
'Referer'=>'http://192.168.1.1/getpage.gch?pid=1001&logout=1'
);
my $head = $res->header('Location');
#print $res->header('Location');
print "\n"; # print $res->status_line . "\n"; #sleep (10);
print $res->as_string(); #获取的是原始内容,包括响应头,响应正文 my $content = $res->content(); # print $content;
print "\n"; 登陆成功:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>F660</title>
<style >
* {
margin: 0 0 0 0;
padding: 0;
}
</style>
</head>
<script type="text/javascript">
function reinitIframe()
{
var iframe = document.getElementById("mainFrame");
try{
var bHeight = iframe.contentWindow.document.body.scrollHeight;
var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
var height = Math.max(bHeight, dHeight);
iframe.height = height;
}catch (ex){}
}
window.setInterval("reinitIframe()", 200);
</script>
<body align="center">
<div align="center" style="margin:0 auto;" >
<table width="808px" border="0">
<tr><td> <iframe width="808px" height="145px" src="top.gch" name="topFrame" scrolling="no" frameborder="0" id="topFrame"></iframe>
<iframe width="808px" src="template.gch" name="mainFrame" id="mainFrame" scrolling="no" frameborder="0" onload="this.height=400"></iframe> </td>
</tr>
</table>
</div>
</body>
</html> 密码错误,登陆失败信息:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR /xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>F660</title>
<style type="text/css" media="all">
<!--
@import "css/login.css";
-->
</style>
<script language="JavaScript">
<!--
javascript:window.history.forward(1);
-->
</script>
<script>
function bridge_route()
{
document.location.href="bridge_route.gch";
}
function dosubmit()
{
if (document.getElementById("Frm_Username").value == "")
{
document.getElementById("errmsg").innerHTML = "用户名称不能为空。";
document.getElementById("myLayer").style.visibility = "visible" ;
return;
}
else
{
document.getElementById("Frm_Logintoken").value = "1826239";
document.fLogin.submit();
}
}
function simcardregister()
{
top.location.href = "getpage.gch?pid=1010";
}
function doregister()
{ top.location.href = "getpage.gch?pid=1010";
}
function RegisterOrSuccess()
{
var cur_version = 214;
var Status = 0;
var Result = 1;
if((0==Status)&&(1==Result))
{
if(212==cur_version)
{
top.location.href = "tele_wanregister_reset_password.gch";
}
else
{
top.location.href = "tele_wanregister_success.gch";
}
}
else
{
top.location.href = "getpage.gch?pid=1010";
}
}
function Register4Chongqing()
{
var Status = 0;
var Result = 1;
var msg = "按要求安装顺序为:先不插入光纤,输入逻辑ID点击注册按钮后再插入光纤进行注册。";
if(1==Result)
{
top.location.href = "tele_wanregister_reset_nopassword.gch";
}
else
{
if(window.confirm(msg))
{
top.location.href = "getpage.gch?pid=1010";
}
}
}
var time="60";
function setTime()
{
time=time-1;
document.getElementById("time").innerHTML=time+"秒";
}
function setinner(type)
{
document.getElementById("myLayer").style.visibility = type ;
}
function Transfer_meaning(id,value)
{
document.getElementById(id).value=value;
}
function onFocus()
{
if( document.getElementById("Frm_Username").disabled == false )
document.getElementById("Frm_Username").focus();
var Status = 0;
var Result = 1; if(Result == 1)
{
if(document.getElementById("Submit1") != null)
{
document.getElementById("Submit1").disabled = true;
}
} }
function ChangeLang()
{
var lang = "Chinese";
document.getElementById("_lang").disabled = false;
if ("English" == lang)
{
document.getElementById("_lang").value = "Chinese";
}
else if ("Chinese" == lang)
{
document.getElementById("_lang").value = "English";
}
document.getElementById("Frm_Username").disabled = true;
document.getElementById("Frm_Password").disabled = true;
document.fLogin.submit();
}
</script>
</head>
<body onload="onFocus();">
<div id="container" class="content">
<div id="myLayer" onClick="setinner('hidden')" style="position:absolute; width:185px; height:91px; z-index:9; left: 250px; top: 10px; background: url(img/pop_up.gif) no-repeat; border: 1px none #000000; visibility: hidden;">
<div id="Layer1" style="position:absolute; width:180px; height:45px; z-index:10; left: 2px; top: 28px;">
<table width="183" border="0">
<tr>
<td width="183"> <font id="errmsg" class="notecontent" ></font><span id="time" style="color:red;display:none;">60秒</span></td><!--秒会写入配置文件中-->
</tr>
</table>
</div>
<div id="Layer3" style="position:absolute; width:140px; height:10px; z-index:11; left: 34px; top: 9px; font-size: 8pt;">
<font class="note" id="errnote"> 错误信息</font>
</div>
</div>
<form name="fLogin" id="fLogin" method="post" onsubmit="return false;" action="">
<div id="username">
<input name="Username" type="text" class="input_username" size="19" id="Frm_Username"/>
</div>
<div id="password">
<input name="Password" type="password" class="input_password" size="20" id="Frm_Password"/>
</div>
<div id="login">
<span style="background-image:../img/login_buttton.gif;background-position: -178px 0;"> <table class="content" border="0" cellpadding="0" cellspacing="0" style="width:290px;height:26px;"><tr><td style="padding:6px 0 0 120px;">
<input class="login" type="submit" id="LoginId" value="登 录" onclick="dosubmit()"/> <input class="login" type="submit" id="Submit1" value="设备注册" onclick="doregister()"/> </td></tr></table>
</span>
</div>
<INPUT TYPE="hidden" NAME="Frm_Logintoken" ID="Frm_Logintoken" VALUE="">
</form>
</div>
</body>
<script> var Lognumber = 2;
if( Lognumber <= 3)
{
var Loginerr = 194;
if (Loginerr == "-3" )
{
document.getElementById("errmsg").innerHTML = "系统忙,请稍后再试。";
}
else if(1 == 1 && 1 == 0)
{
document.getElementById("errmsg").innerHTML = "用户名或密码错误!";
}
else
{
document.getElementById("errmsg").innerHTML = "用户信息有误,请重新输入。";
}
document.getElementById("myLayer").style.visibility = "visible" ;
} if(0 == 3||2==3)
{
SetDisable();
}
function SetDisable()
{
document.getElementById("errmsg").innerHTML = "您的错误登录次数已经达到三次,系统将延时进行校验。";
document.getElementById("Frm_Username").disabled = true;
document.getElementById("Frm_Password").disabled = true;
document.getElementById("LoginId").disabled = true;
document.getElementById("myLayer").style.visibility = "visible" ;
document.getElementById("time").style.display = "" ;
var timeout = setTimeout("setDisable()",60000);
var interval = setInterval("setTime()",1000);
}
function setDisable()
{
document.getElementById("Frm_Username").disabled = false;
document.getElementById("Frm_Password").disabled = false;
document.getElementById("LoginId").disabled = false;
document.getElementById("time").style.display = "none";
document.getElementById("myLayer").style.visibility = "hidden";
}
</script>
</html>
perl 登陆电信猫的更多相关文章
- Perl脚本通过Expect登陆多台设备批量执行命令并Log
本例子尝试使用Perl脚本借助Expect模块实现如下目的: 登陆多台设备 设备登陆信息按如下格式存放于文件中. $ cat hosts.txt 192.168.30.7:node1:telnet:b ...
- perl 自动登陆网站发短信
use LWP::UserAgent; use HTTP::Date qw(time2iso str2time time2iso time2isoz); use Net::Ping; use Sock ...
- Perl技巧
项目里面一直用的是Perl,Perl里有各种小技巧就分享在这吧. push(@a, $b) 把b元素压入a数组中, 还可以有 push(@a, [@b]); 那a就成了二维数组了 scalar(@a) ...
- 【转】FTP自动上传文件的perl脚本以及配置文件
这个perl文件将执行的任务是, 按照指定的文件夹目录,自动将该文件夹下的所有文件上传到指定ftp站点的指定目录下 本应用程序设计的几个基本理念是:工具箱再利用:尽可能利用已有的工具:简化运行步骤:不 ...
- perl 登录某网站
<pre name="code" class="html">use Net::SMTP; use LWP::UserAgent; use HTTP: ...
- 用scponly限制只能拷文件,不能登陆(MAC版)
目的: 限制用户在特定目录(不能看到上级或者根目录) 只能执行scp或者sftp拷贝特别目录下的文件 不能SSH登陆,其它命令不能执行 机制: SSH登陆成功后,scponly会接管SHELL,并 ...
- selenium + firefox/chrome/phantomjs登陆之模拟点击
登陆之模拟点击 工具:python/java + selenium + firefox/chrome/phantomjs (1)windows开发环境搭建 默认已经安装好了firefox 安装pip ...
- 在多点环境下使用cas实现单点登陆及登出
CAS 介绍 CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目.CAS 具有以下特 ...
- perl 引用(数组和hash引用) --- perlreftut - Mark 的一个简单的'引用'教程 ---Understand References Today. --Mark Jason Dominus, Plover Systems (mjd-perl-ref+@plover.com)
https://blog.csdn.net/fangwei1235/article/details/8570886 首页 博客 学院 下载 论坛 APP 问答 商城 活动 VIP会员 招聘 ITeye ...
随机推荐
- Android显示GIF动画完整示例(二)
MainActivity如下: package cc.testgif2; import android.os.Bundle; import android.app.Activity; /** * De ...
- TCP/IP之DNS域名解析系统
DNS系统是一个分布式的数据库,当一个数据库发现自己并没有某查询所需要的数据的时候,它将把查询转发出去,而转发的目的地通常是根服务器,根服 务器从上至下层层转发查询,直到找到目标为止.DNS还有一个特 ...
- 【JavaScript】history.back() 网页已过期
使用history.back()进行返回时,有时会提示“网页已过期”, 多数是因为目标页面的form为post提交方式,而且是表单已经提交后的响应页面,无法找到form中的具体参数,而“报错”. 具体 ...
- 2080夹角有多大II
寻人启事:2014级新生看过来! 夹角有多大II Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- XHTML 基础(含部分css)
基于http://www.ycku.com/xhtml/ 的视频教程的一些笔记 关于xhtml的解释 引用百度百科 可扩展超文本标记语言,是一种置标语言,表现方式与超文本标记语言(HTML)类似,不过 ...
- [转] iOS应用架构谈 网络层设计方案
原文地址:http://casatwy.com/iosying-yong-jia-gou-tan-wang-luo-ceng-she-ji-fang-an.html iOS应用架构谈 开篇 iOS应用 ...
- Java, C#, Swift语法对比速查表
原文:Java, C#, Swift语法对比速查表 Java 8 C# 6 Swift 变量 类型 变量名; 类型 变量名; var 变量名 : 类型; 变量(类型推断) N/A var 变量名= ...
- docker 学习笔记21:docker连接网络的设置
1.如果docker主机不需要通过代理连接外网 则docker的相关命令(如docker search)或docker容器与网络相关的操作都可以正常进行,不需要特殊设置. 2.当docker主机 是通 ...
- VC++在对话框中加入属性页
当一个基于对话框的程序中有相当多的控件时,你一定会想到使用属性页来将这些控件分类放置.本文针对这种方法来讨论几种可能实现的方案. 方案一本方案的例子请见源代码打包文件中的Property1部分 在对话 ...
- SGU 495. Kids and Prizes( 数学期望 )
题意: N个礼品箱, 每个礼品箱内的礼品只有第一个抽到的人能拿到. M个小孩每个人依次随机抽取一个, 求送出礼品数量的期望值. 1 ≤ N, M ≤ 100, 000 挺水的说..设f(x)表示前x ...