<?php
// Script desenvolvido por Rodrigo Ferreira facebook.com/ryumaruwebanimes
/*
Esse script permite fazer download e renomear arquivos por url Remota por metodo Curl aplicação deste script e devastadora você podera usar ele para varias url menos no caso
de servidores de download normais uma vez que para isso devera ter um retorno do valor real passando pelo sistema de protect link do servidor mais funciona com qualquer url
de link direto.
*/
// Tempo de execução do script infinito
// Função para forçar download de qualquer arquivo
function download( $file , $tamanhoGeral ) {
header ( 'Content-Description: File Transfer' ) ; header ( 'Content-Type: application/octet-stream' ) ; header ( 'Content-disposition: attachment; filename="ryumaru_fudeu_uol.mp4"' ) ; header ( 'Cache-Control: must-revalidate, post-check=0, pre-check=0' ) ; $size = get_size( $file ) ;
header ( 'Content-Length: ' . $size ) ;
$i = 0 ;
while ( $i <= $size ) {
//Output do da UOL
tamanhoUOL( $file , ( ( $i == 0 ) ?$i : $i + 1 ) , ( ( ( $i + $tamanhoGeral ) > $size ) ?$size : $i + $tamanhoGeral ) ) ;
$i = ( $i + $tamanhoGeral ) ;
}
}
// Função de chamada de retorno para CURLOPT_WRITEFUNCTION, Isto é o que imprime o pedaço
function downloadForcado( $ch , $str ) {
print ( $str ) ;
}
// Função para obter um intervalo de bytes do arquivo remoto
function tamanhoUOL( $file , $start , $end ) {
curl_setopt ( $ch , CURLOPT_WRITEFUNCTION
, 'downloadForcado' ) ; }
// Pega o Tamanho total do arquivo
function get_size( $url ) {
$size = curl_getinfo ( $ch , CURLINFO_CONTENT_LENGTH_DOWNLOAD
) ; }
// Chamando a função para funcionammento
$file = 'url de download aqui' ;
// Tamanho maximo do arquivo do lado do $file
download( $file , 314572800 ) ;
?>
PD9waHAgCgkKLy8gU2NyaXB0IGRlc2Vudm9sdmlkbyBwb3IgUm9kcmlnbyBGZXJyZWlyYSBmYWNlYm9vay5jb20vcnl1bWFydXdlYmFuaW1lcwovKgpFc3NlIHNjcmlwdCBwZXJtaXRlIGZhemVyIGRvd25sb2FkIGUgcmVub21lYXIgYXJxdWl2b3MgcG9yIHVybCBSZW1vdGEgcG9yIG1ldG9kbyBDdXJsIGFwbGljYcOnw6NvIGRlc3RlIHNjcmlwdCBlIGRldmFzdGFkb3JhIHZvY8OqIHBvZGVyYSB1c2FyIGVsZSBwYXJhIHZhcmlhcyB1cmwgbWVub3Mgbm8gY2FzbwpkZSBzZXJ2aWRvcmVzIGRlIGRvd25sb2FkIG5vcm1haXMgdW1hIHZleiBxdWUgcGFyYSBpc3NvIGRldmVyYSB0ZXIgdW0gcmV0b3JubyBkbyB2YWxvciByZWFsIHBhc3NhbmRvIHBlbG8gc2lzdGVtYSBkZSBwcm90ZWN0IGxpbmsgZG8gc2Vydmlkb3IgbWFpcyBmdW5jaW9uYSBjb20gcXVhbHF1ZXIgdXJsIApkZSBsaW5rIGRpcmV0by4KKi8KCi8vIFRlbXBvIGRlIGV4ZWN1w6fDo28gZG8gc2NyaXB0IGluZmluaXRvCQogIHNldF90aW1lX2xpbWl0KDApOwoKLy8gRnVuw6fDo28gcGFyYSBmb3LDp2FyIGRvd25sb2FkIGRlIHF1YWxxdWVyIGFycXVpdm8KZnVuY3Rpb24gZG93bmxvYWQoJGZpbGUsJHRhbWFuaG9HZXJhbCl7CiAgCiAgICBoZWFkZXIoJ0NvbnRlbnQtRGVzY3JpcHRpb246IEZpbGUgVHJhbnNmZXInKTsKICAgIGhlYWRlcignQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nKTsKICAgIGhlYWRlcignQ29udGVudC1kaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9InJ5dW1hcnVfZnVkZXVfdW9sLm1wNCInKTsKICAgIGhlYWRlcignQ2FjaGUtQ29udHJvbDogbXVzdC1yZXZhbGlkYXRlLCBwb3N0LWNoZWNrPTAsIHByZS1jaGVjaz0wJyk7CiAgICBoZWFkZXIoJ0V4cGlyZXM6IDAnKTsKICAgIGhlYWRlcignUHJhZ21hOiBwdWJsaWMnKTsKICAgICRzaXplID0gZ2V0X3NpemUoJGZpbGUpOwogICAgaGVhZGVyKCdDb250ZW50LUxlbmd0aDogJy4kc2l6ZSk7CgogICAgJGkgPSAwOwogICAgd2hpbGUoJGk8PSRzaXplKXsKICAgICAgICAvL091dHB1dCBkbyBkYSBVT0wKICAgICAgICB0YW1hbmhvVU9MKCRmaWxlLCgoJGk9PTApPyRpOiRpKzEpLCgoKCRpKyR0YW1hbmhvR2VyYWwpPiRzaXplKT8kc2l6ZTokaSskdGFtYW5ob0dlcmFsKSk7CiAgICAgICAgJGkgPSAoJGkrJHRhbWFuaG9HZXJhbCk7CiAgICB9Cgp9CgovLyBGdW7Dp8OjbyBkZSBjaGFtYWRhIGRlIHJldG9ybm8gcGFyYSBDVVJMT1BUX1dSSVRFRlVOQ1RJT04sIElzdG8gw6kgbyBxdWUgaW1wcmltZSBvIHBlZGHDp28KZnVuY3Rpb24gZG93bmxvYWRGb3JjYWRvKCRjaCwgJHN0cikgewogICAgcHJpbnQoJHN0cik7CiAgICByZXR1cm4gc3RybGVuKCRzdHIpOwp9CgovLyBGdW7Dp8OjbyBwYXJhIG9idGVyIHVtIGludGVydmFsbyBkZSBieXRlcyBkbyBhcnF1aXZvIHJlbW90bwpmdW5jdGlvbiB0YW1hbmhvVU9MKCRmaWxlLCRzdGFydCwkZW5kKXsKICAgICRjaCA9IGN1cmxfaW5pdCgpOwogICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1VSTCwgJGZpbGUpOwogICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1JBTkdFLCAkc3RhcnQuJy0nLiRlbmQpOwogICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0JJTkFSWVRSQU5TRkVSLCAxKTsKICAgIGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9XUklURUZVTkNUSU9OLCAnZG93bmxvYWRGb3JjYWRvJyk7CiAgICAkcmVzdWx0ID0gY3VybF9leGVjKCRjaCk7CiAgICBjdXJsX2Nsb3NlKCRjaCk7Cn0KCi8vIFBlZ2EgbyBUYW1hbmhvIHRvdGFsIGRvIGFycXVpdm8KZnVuY3Rpb24gZ2V0X3NpemUoJHVybCl7CiAgICAkY2ggPSBjdXJsX2luaXQoKTsKICAgIGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9VUkwsICR1cmwpOwogICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0ZPTExPV0xPQ0FUSU9OLCB0cnVlKTsKICAgIGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwgdHJ1ZSk7CiAgICBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfSEVBREVSLCB0cnVlKTsKICAgIGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9OT0JPRFksIHRydWUpOwogICAgY3VybF9leGVjKCRjaCk7CiAgICAkc2l6ZSA9IGN1cmxfZ2V0aW5mbygkY2gsIENVUkxJTkZPX0NPTlRFTlRfTEVOR1RIX0RPV05MT0FEKTsKICAgIHJldHVybiBpbnR2YWwoJHNpemUpOwp9CgoKCi8vIENoYW1hbmRvIGEgZnVuw6fDo28gcGFyYSBmdW5jaW9uYW1tZW50bwokZmlsZSA9ICd1cmwgZGUgZG93bmxvYWQgYXF1aSc7CgovLyBUYW1hbmhvIG1heGltbyBkbyBhcnF1aXZvIGRvIGxhZG8gZG8gJGZpbGUKZG93bmxvYWQoJGZpbGUsMzE0NTcyODAwKTsKPz4=