1 FTS Download Anitube v1.3 Sex maio 10, 2013 12:17 pm
Moedas : 201
Mensagens : 92
Humor : *-*
Reputação : 5
Mensagens : 92
Humor : *-*
Reputação : 5
hacker fts315
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
nova atualizaçao do script, incrementei a sintaxe -a que baixa uma lista de anime q esteja em um arquivo (as url tem q ta uma embaixo da outra), a sintaxe -su na pesquisa com a sintaxe -p salva as url em um arquivo
exemplos:
[Tens de ter uma conta e sessão iniciada para poderes visualizar este link]
nova atualizaçao do script, incrementei a sintaxe -a que baixa uma lista de anime q esteja em um arquivo (as url tem q ta uma embaixo da outra), a sintaxe -su na pesquisa com a sintaxe -p salva as url em um arquivo
exemplos:
perl fts.pl -a "animes.txt" -d -f mp4
perl fts.pl -p "naruto" -su
[Tens de ter uma conta e sessão iniciada para poderes visualizar este link]
- Código:
#!/usr/bin/perl
#autor: hacker fts315
#contato: http://www.facebook.com/hacker.fts315
#versao: 1.3
#data: 24/04/2013
#update: 09/05/2013
################################################
#sintaxe:
#
# -p procura determinado anime (* nome do anime)
# -n * numero da index da procura (* index)
# -u * url do video (* url)
# -a * varias url em um arquivos (* arquivo)
# -i info do anime
# -d baixa o anime
# -dw baixa o anime pelo wget (necessario o wget)
# -l mostra o link oculto do video
# -f * formato so existe dois mp4 e flv (* formato)
# -o * muda o nome do arquivo de saida (* nome do arquivo)
# -sp salva a pagina html
# -su salva as url da sintaxe -p
# -h ajuda sobre os comandos
############################
use WWW::Mechanize;
use Getopt::Long;
use URI::Escape;
$fts = WWW::Mechanize->new;
GetOptions("u=s"=>\$u,"f=s"=>\$f,"l"=>\$l,"d"=>\$d,"dw"=>\$dw,"h"=>\$h,"i"=>\$i,"sp"=>\$sp,"o=s"=>\$o,"p=s"=>\$p,"n=s"=>\$n,"a=s"=>\$a,"su"=>\$su);
slogan();
if(defined($h))
{
print "autor: \n\n" .
" coder: hacker fts315\n" .
" face: www.facebook.com/hacker.fts315\n\n" .
"sintaxe: \n\n" .
" -p * procura determinado anime (* nome do anime)\n" .
" -n * numero da index da procura (* index)\n" .
" -u * url do video (* url)\n" .
" -a * varias url em um arquivos (* arquivo)\n" .
" -i info do anime\n" .
" -d baixa o anime\n" .
" -dw baixa o anime pelo wget (necessario o wget)\n" .
" -l mostra o link oculto do video\n" .
" -f * formato so existe dois mp4 e flv (* formato)\n" .
" -o * muda o nome do arquivo de saida (* nome do arquivo)\n" .
" -sp salva a pagina html\n" .
" -su salva as url da sintaxe -p\n" .
" -h ajuda sobre os comandos\n\n".
"exemplos:\n\n".
" perl fts.pl -u http://www.anitube.se/video/40680/High-School-DxD-09 -f mp4 -d\n" .
" perl fts.pl -u http://www.anitube.se/video/40680/High-School-DxD-09 -f mp4 -l\n" .
" perl fts.pl -u http://www.anitube.se/video/40680/High-School-DxD-09 -i\n" .
" perl fts.pl -p \"sword art online 04\"\n" .
" perl fts.pl -a \"animes.txt\" -f mp4 -d\n\n";
exit;
}
if(defined($p))
{
$index = 1;
$qnt_index_fin = 1;
if(defined($n))
{
$fts->get("http://www.anitube.se/search/". $n . "/?sort=&search_type=videos&search_id=" . uri_escape($p) . "&search_key=");
$index = $n;
}
else
{
$fts->get("http://www.anitube.se/search/?search_id=" . uri_escape($p));
}
if($fts->content =~ /">Next<\/a>/)
{
$url_index = $fts->uri;
@qnt_index = $fts->content =~ /(\d+)<\/a><\/li>/g;
}
$qnt_index_fin = 1;
foreach (@qnt_index){
$qnt_index_fin = $_;
};
@qnt_video = $fts->content =~ /<span class="moreLink">(.*)<\/span>/;
print "\nindex: " . $index . " de ". $qnt_index_fin ." (" . $qnt_video[0] . ")\n\n";
@videos = $fts->content =~ /<div class="videoThumb">(.*)<!-- End Video List -->/s;
@videos_link = $videos[0] =~ /<a(.*)<\/a>/g;
foreach(@videos_link)
{
@videos_link_rec = $_ =~ /href="(.*)">/;
$video_cont = 0;
foreach(@videos_link_rec)
{
if($_ =~ /title=".*/)
{
next;
}
$anime_mostrar = $_;
print $anime_mostrar . "\n\n";
if(defined($su))
{
open(FTS_S,">>" . $p . ".txt");
print FTS_S $anime_mostrar . "\n";
close(FTS_S);
}
}
}
exit;
}
if(defined($a))
{
open(FTS_ARQ,"<". $a);
@animes = <FTS_ARQ>;
print "\nbaixando lista de animes isso pode demorar um pouco \n\n";
foreach(@animes)
{
$url_anime = $_;
@nome_anime = $url_anime =~ /.*\/(.*)$/;
if(chomp($url_anime) eq "")
{
next;
}
else
{
print $nome_anime[0];
}
$fts->get($url_anime);
if(defined($sp))
{
$fts->save_content($nome_anime[0] . ".html");
}
@hack = $fts->content =~ /nuevo\/config.php\?key=(.*)'; var w=/i;
$lol = "http://www.anitube.se/nuevo/playlist.php?key=" . $hack[0];
$fts->get($lol);
if(defined($f))
{
if ($f eq "mp4")
{
@anime = $fts->content =~ /<html5>(.*)<\/html5>/;
$extensao = ".mp4";
}
elsif($f eq "flv")
{
@anime = $fts->content =~ /<file>(.*)<\/file>/;
$extensao = ".flv";
}
if(defined($d))
{
$fts->get($anime[0],":content_file"=>$nome_anime[0]. $extensao);
}
elsif(defined($dw))
{
$baixar = "wget " . $anime[0] . " -O " . $nome_anime[0] . $extensao;
system($baixar);
}
unless($url_anime eq "")
{
print " (completo)";
}
}
print "\n";
}
close(FTS_ARQ);
print "\n\ntodos os animes da lista foram baixados\n\n";
exit;
}
if(defined($u))
{
$fts->get($u);
$host = $fts->uri;
@nome_anime = $host =~ /.*\/(.*)$/;
@hack = $fts->content =~ /nuevo\/config.php\?key=(.*)'; var w=/i;
$lol = "http://www.anitube.se/nuevo/playlist.php?key=" . $hack[0];
if(defined($sp))
{
print "\npagina salva\n\n";
$fts->save_content($nome_anime[0] . ".html");
}
if(defined($i))
{
print "\n";
@inf_nome = $fts->content =~ /<h1 class="mainBoxHeader">(.*)<\/h1>/im;
@inf_uploader = $fts->content =~ /href="http:\/\/www.anitube.se\/users\/(.*)">/im;
@inf_adicionado = $fts->content =~ /<p class="viewVideoText">Adicionado.*class="textGlow">(.*)<\/span><\/p>/im;
@inf_tempo = $fts->content =~ /class="viewVideoText">Dura.*<span class="textGlow">(.*)<\/span><\/p>/im;
@inf_categoria = $fts->content =~ /href="(http:\/\/www.anitube.se\/categories\/.*)">/im;
push(@inf_categoria,$inf_categoria[0] =~ /http:\/\/www.anitube.se\/categories\/\d+\/(.*)/);
@inf_desc1 = $fts->content =~ /<li class="videoDesc">(.*)<\/li>.*<li class="videoRate">.*<div id="voteProcess">/is;
push(@inf_desc1,$inf_desc1[0] =~ /(\w.*\w)/);
$fts->get($inf_categoria[0]);
@inf_desc2 = $fts->content =~ /<p class="catDesc">(.*)<\/p>.*<\/li>.*<\/ul>/ism;
print "nome: " . $inf_nome[0] . "\n";
print "categoria: " . $inf_categoria[1] . "\n";
print "tempo: " . $inf_tempo[0] . "\n";
print "uploader: " . $inf_uploader[0] . "\n";
print "adicionado: " . $inf_adicionado[0] . "\n\n";
print "descricao 1: " . $inf_desc1[1] . "\n\n";
print "descricao 2: " . $inf_desc2[0] . "\n";
print "\n";
}
$fts->get($lol);
if(defined($f))
{
if ($f eq "mp4")
{
@anime = $fts->content =~ /<html5>(.*)<\/html5>/;
$extensao = ".mp4";
}
elsif($f eq "flv")
{
@anime = $fts->content =~ /<file>(.*)<\/file>/;
$extensao = ".flv";
}
else
{
print "\nformato desconhecido\n\n";
exit;
}
if(defined($l))
{
print "\n";
print "link: " .$anime[0];
print "\n\n";
}
if(defined($d))
{
print "\nbaixando o anime isso pode demorar um pouco\n\n";
if(defined($o))
{
$fts->get($anime[0],":content_file"=>$o . $extensao);
}
else
{
$fts->get($anime[0],":content_file"=>$nome_anime[0]. $extensao);
}
print "download completo\n\n";
exit;
}
elsif(defined($dw))
{
if(defined($o))
{
$baixar = "wget " . $anime[0] . " -O " . $o . $extensao;
}
else
{
$baixar = "wget " . $anime[0] . " -O " . $nome_anime[0] . $extensao;
}
system($baixar);
exit;
}
}
exit;
}
else
{
print "\n\ndigite a sintaxe -h para ver ajuda\n\n";
}
sub slogan
{
print "============================================\n" .
" FTS Download Anitube v1.3\n".
"============================================\n";
}