作者dark22 (小宇)
看板Perl
标题Re: [问题] 有关网页认证码的问题
时间Mon Sep 27 22:18:19 2010
/* ========= 最近流行 自己问问题 自己解答 ========== */
use WWW::Mechanize;
my $mech = WWW::Mechanize->new( cookie_jar => undef );
my $url = '图片认证页面';
my $data = '填写资料页面';
my $vote = '投票link';
$mech->get($url); #开启图档网址
$mech->save_content('code.jpg'); #存成图档
$mech->get($data); #开启填写资料页面
print "Input Code Number:";
$code = <>;
chomp $code;
# 下面的 field 资料 可以用 mech-dump url 去抓取
# 如果你喜欢从原始码获取这些资料...那也OK :p
$mech->field(name,'陈小明');
$mech->field(mail,'陈小明@xx.xx');
$mech->field(numb,'0912345678');
$mech->field(addr,'叉叉市叉叉路叉叉号');
$mech->field(code,'$code');
$mech->submit(); #送出
$mech->get($vote); #投出选票
※ 引述《dark22 (小宇)》之铭言:
: 最近想写一个自动投票程式
: 现在的认证机制 好像多了一个要输入认证码
: 我的想法是当get时候先把认证图片存成档案...
: 在手动输入图片的数字...在去get
: 可是这样在get的结果...认证图片好像会换一张
: 导致认证错误....请问 有什麽方法可以解决吗?
: 或者说这是cookie的问题?
: ----程式码-------------------------------------------------
: use LWP::Simple;
: use WWW::Mechanize;
: my $url='http://act.udn.com/ACT/baby/image.jsp'; # 这是认证图片的位置
: my $mech=WWW::Mechanize->new();
: getstore($url, '01.jpg');
: print "Input Code:";
: $input = <>;
: chomp $input;
: #下两行是同一行...
: $url2='http://act.udn.com/ACT/baby/data_action.jsp?
: name=aaa&[email protected]?phone=123&address=321&codekey='."$input";
: getstore($url2,'01.html'); #确认有没有登入成功
: -------------------------------------------------------------
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.82.48