-2

http://faceoook.com/recover.phpの電子メール フォームに入力するためのこれがあり ます。ご存知のように、電子メール、名前、または電話番号で検索できます。そのため、メールで検索して、検索が完了した後にそのページのコンテンツを取得して、プロファイルが見つかったかどうかを確認しようとしていますが、コードが機能していないようです。

use HTTP::Request::Common;
use LWP::UserAgent;
$email="blabla\@hotmail.com";
my %data=(email=>$email);

my $user_agent = 'Mozilla/6.0';
my $Browser = LWP::UserAgent->new;
$Browser->agent($user_agent);
$ua=$Browser->post('https://www.facebook.com/recover.php',\%data);
if($ua->content=~/couldn\'t/){        #"couldn't" is part of the message displayed when                
print "Not Found";                    # input doesn't match
}
elsif ($ua->content=~/name/) {
print "Found";
}
else {
print "Not found"; 
}

$result=$ua->content;
open FILE,">","me.txt" or die $!;
print FILE $result;
close FILE;
4

2 に答える 2

0

フォームのアクション フィールドの URL にリクエストを送信する必要があります (フォームを表示するページの URL を使用している場合)。

また、隠しフィールドを に追加します%data

ページの HTML コードを調べて (または何らかのフォーム インスペクターを使用して)、正しい URL と隠しフィールドを取得します (JavaScript コードが存在する場合は、事態がさら​​に複雑になる可能性があります)。

それからuse strict(そしてuse warningsまた)すでにルミが言ったように.

于 2012-06-05T08:09:51.033 に答える