在perl中通过WWW::Mechanize登录不了网站
时间:2011-11-15
来源:互联网
试了好久,也换了好多个参数了,但总登录不了...
$mech->success 的返回结果是1,但$mech->content 中总是有“密码输入错误”这样的提示。可那用户名和密码肯定是正确的啊,打开浏览器能正常登录。
测试代码:
Perl code
agent换成下面这样的也同样不行:
Perl code
把“login%5Baccount%5D”写成“login[account]”的情况下,$mech->success 的值为空.
请高手们指点指点啊,
谢谢!!
$mech->success 的返回结果是1,但$mech->content 中总是有“密码输入错误”这样的提示。可那用户名和密码肯定是正确的啊,打开浏览器能正常登录。
测试代码:
Perl code
#!/usr/bin/perl use strict; use WWW::Mechanize; my $loginUrl = 'http://passport.115.com/?ac=login&tpl=pc'; my $mech = WWW::Mechanize->new(); $mech->agent_alias('Windows IE 6'); $mech->get($loginUrl); $mech->submit_form( form_id => 'loginForm', fields => { 'login%5Baccount%5D' => 'okabc123', 'login%5Bpasswd%5D' => 'abc123ha', 'goto' => 'http://115.com', }, ); print "isSuccess: ".$mech->success."\n".$mech->content."\n\n";
agent换成下面这样的也同样不行:
Perl code
use constant UA => 'Opera/9.80 (X11; Linux i686; U; en) Presto/2.6.30 Version/10.60'; my $mech=WWW::Mechanize->new(agent=>UA);
把“login%5Baccount%5D”写成“login[account]”的情况下,$mech->success 的值为空.
请高手们指点指点啊,
谢谢!!
作者: jnvcf 发布时间: 2011-11-15
仔细看清楚content。有些时候页面的内容里是有这些错误信息,但是由js控制的,不会真正显示给用户。所以你要先分辨清楚。
作者: iambic 发布时间: 2011-11-15
做登录脚本的时候,最好先观察一下,正常登录的流程.请求的方式了,传送的参数,以及头部信息等等.
作者: userguanguan 发布时间: 2011-11-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28