Disclaimer: Code is for educational use only.
command line syntax: getzippy.pl http://www13.zippyshare.com/v/83632345/file.html
#!/usr/bin/perl -w
use strict;
my $useragent = "Mozilla/5.0";
if(!defined($ARGV[0])) { die "no args. requires url\n"; }
system("mkdir files 2>/dev/null");
my $zippyurl = $ARGV[0];
chomp($zippyurl);
my $magic_b;
my $url;
system("wget -O zippy.page --keep-session-cookies --save-cookies zippy.cookies \"$zippyurl\"");
print "\n\n";
my @filepage = `cat zippy.page`;
foreach(@filepage) {
# looks like
# document.getElementById('dlbutton').href = "/d/83632345/"+(a/a+b+b%10)+"/Deadmau5%20-%20Ghost%20N%20Stuff%20%28Original%20Mix%29.mp3";
my($prefix, $postfix, $zippyserv);
if($zippyurl =~ /(http:\/\/ww.+?\.zippyshare\.com)/) {
$zippyserv = $1;
}
if($_ =~ /var\sb\s=\s(.+)?\;/) {
$magic_b = $1 * 1;
print "magic b =>\t$magic_b\n";
}
#if(!defined($magic_b)) { print "ERROR: couldn't find magic var numbers\n"; }
if($_ =~ /.+?dlbutton.+?\s=\s\"(.+?)\"(\+.+?)\"(.+?)\"/) {
$prefix = $1;
my $magicnumformula = $2;
$postfix = $3;
print "prefix ->\t$prefix\n";
print "formula ->\t$magicnumformula\n";
print "postfix ->\t$postfix\n\n";
my $temp1 = 1 + $magic_b;
my $temp2 = $magic_b % 10;
my $magicmath = $temp1 + $temp2;
$url = "$zippyserv" . "$prefix" . "$magicmath" . "$postfix";
print "\nurl ->\t$url\ngetting file..\n\n";
system("mkdir ./files 2>>/dev/null");
system("wget --directory-prefix=./files --load-cookies ./zippy.cookies --user-agent \"$useragent\" $url");
print "\n";
}
}
# cleanup temp files
system("rm zippy.cookies");
system("rm zippy.page");
No comments:
Post a Comment