caii Posted October 10, 2011 Report Posted October 10, 2011 hai sa va pun un scriptulet facut acum cateva zile care urca filmultete pe youtube folosind api-ul lor.iti trebuie:-cont youtube+gmail si un nr de telefon pt confirmare(mobil de la prieteni, cu voceonline.romtelecom.ro nu merge, pt cei care pun filme cu zdrente si isi iau disable la cont dupa ce toti ratatii isi fac laba la film apoi dau report)-api key, se gaseste pe code.google.com-un harb de pc conectat la net pe care ruleaza php-un pachet de tigari plus bere-zend framework de aici Zend Framework: Downloads: Downloadsun folder la care ii setezi permisiuni sa poti scrie in el-daca nu intelegi ceva ma intrebi, dar cauta pe php.net mai intai ca sigur gasesti raspunsulcod:<?if(isset($_GET['getVideo']))//getVideo vine din action-ul formului cu care trimiti datele primului video, vezi posturile la linia 39{ require_once 'Zend/Loader.php'; //nu merge fara el require_once 'conectare_baza_date.php';//daca vrei sa contorizezi ce ai bagat si cum Zend_Loader::loadClass('Zend_Gdata_YouTube'); $yt = new Zend_Gdata_YouTube(); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); $authenticationURL= 'https://www.google.com/accounts/ClientLogin'; $httpClient = Zend_Gdata_ClientLogin::getHttpClient( $username = 'salam_florin2009_skumpyk_boss@gmail.com',//mailul cu care ti-ai facut api key $password = 'bossdeboss',//parola $service = 'youtube',//ramane youtube $client = null, $source = 'CurveZdrente', //nume aplicatie $loginToken = null, $loginCaptcha = null, $authenticationURL); $developerKey = 'apik_key';//api key generat pe code.google $applicationId = 'CurveZdrente';//aplicatie $clientId = 'CurveZdrente';//aplicatie $yt = new Zend_Gdata_YouTube($httpClient, $applicationId, $clientId, $developerKey); $yt = new Zend_Gdata_YouTube($httpClient); $yt = new Zend_Gdata_YouTube($httpClient); if(!isset($_GET['numar']))//daca nu avem inseamna ca a venit din formul trimis cu post { $numar = 0; } else//e venit dupa meta refresh { $numar = $_GET['numar']; } if(!isset($_GET['dinCache']))//venit din formul trimis cu post { @unlink('video/cacheNume.txt');//daca exista il stergem ca nu avem nevoie, grija sa avem folderul video chmodat @unlink('video/cacheDetalii.txt');//aceeasi treaba file_put_contents('video/cacheNume.txt', $_POST['nume']);//scrie nume videourilor trimise cu post in fisier, eu am bagat o lista separate prin | file_put_contents('video/cacheDetalii.txt', $_POST['cate_cuvinte'].'|'.$_POST['Title'].'|'.$_POST['Description']);//cate cuvinte e parametrul unei functii trase din conectare_baza_date.php care ia cate_cuvinte bagi in form la random(cu shuffle($array_cuvinte) dintr-un aray -- vezi mai jos cum merge $dataNume = $_POST['nume'];//numele clipurilor separate prin | $dataCateCuvinte = $_POST['cate_cuvinte'];//vezi 2 linii mai sus $dataTitle = $_POST['Title'];//titlu video $dataDescription = $_POST['Description'];//descriere video baga si %nume% unde vrei sa iti inlocuiasca cu nume clip } else//e venit dupa meta refresh { $cacheNume = file_get_contents('video/cacheNume.txt');//citeste ce nume avem in cache $cacheDetalii = file_get_contents('video/cacheDetalii.txt');//detalii, adica nr_cuvinte, titlu, descriere separate prin | $cacheSpargereDetalii = explode('|', $cacheDetalii);//fiecare detaliu e separat prin | deci le spargem $dataCateCuvinte = $cacheSpargereDetalii[0];//numarul de cuvinte $dataTitle = $cacheSpargereDetalii[1];//titlul videoului, care contine si %nume% pe care il schimbam cu str_replace mai jos in numele curent al videoului $dataDescription = $cacheSpargereDetalii[2];//descrierea videoului, inlocuim %nume% cu numele curent } $nume = explode('|', $cacheNume);//spargem linia aia lunga cu numele separate prin | intr-un array array_pop($nume);//ramane un | la sfarsit, adica un video fara nume, cu array_pop iese $maxim = count($nume);//numaram cate clipuri avem de bagat if(isset($_GET['numar']) && $_GET['numar'] > $maxim)//daca dupa meta refresh avem un nr mai mare inseamna ca s-a terminat de urcat pe youtubr { print 'Toate videourile au fost trase<br />Total videouri: '.$maxim; die(); } $bune = '';//vezi linia 69 foreach($nume as $xnume) { //eu le iau remote apoi le scriu in folderul video, videourile sunt de forma http://undeva.xxx/video/'.$xnume.'1.flv for($j = 1;$j <= 1;$j++)//cate video sa ia, video/'.$xnume.'1.flv, video/'.$xnume.'2.flv etc { if(strlen(@file_get_contents('http://sursa/video/'.$xnume.$j.'.flv', null, null, null, 1024)) > 1000)//verifica daca exista { $bune .= 'http://sursa/video/'.$xnume.$j.'.flv|';//care exista intra in stringul $bune separate prin | } } } $toate = explode('|', $bune);//video bune sparte in array prin | array_pop($toate);//ultimul e gol, scoatem $v = 1; //numar video print 'Numar: '.$numar.'<br />Nume: '.$nume[$numar].'<br />';//video curent foreach($toate as $ok)//pt fiecare video bun uploadeaza { print 'Sursa: '; print $ok; print '<br />'; $continutulRemote = file_get_contents($ok);//ia videoul in variabila $continutulServer = file_put_contents('video/'.$nume[$numar].'-'.$v.'.flv', $continutulRemote);//il scrie la noi in folderul video unset($continutulRemote);//mai eliberam memorie ca am pentium 1 $title = str_replace('%nume%', $nume[$numar], $dataTitle).' '.get_cuvinte($dataCateCuvinte, " ");//la linia 38 scrie despre functia ge_cuvinte,ia cate cuvinte ii dai separate prin al doilea parametru $description = str_replace('%nume%', $nume[$numar], $dataDescription);//linie 50 $tags = get_cuvinte(10, ',');//astea sunt taguri pt video, ia 10 cuvinte la random separate prin ,/**uploadare pe youtube**/ $myVideoEntry = new Zend_Gdata_YouTube_VideoEntry(); $filesource = $yt->newMediaFileSource('video/'.$nume[$numar].'-'.$v.'.flv');//sursa noastra de video $filesource->setContentType('video/x-flv');//content type, eu am flv-uri $filesource->setSlug('video/'.$nume[$numar].'-'.$v.'.flv');//sursa $myVideoEntry->setMediaSource($filesource);//sursa $myVideoEntry->setVideoTitle($title);//titlu $myVideoEntry->setVideoDescription($description); $myVideoEntry->setVideoCategory('People');//categorie, People e People & Blogs, sunt intr-un xml categoriile corect, vezi pe api $myVideoEntry->setVideoTags($tags);//ii da tagurile $uploadUrl = 'http://uploads.gdata.youtube.com/feeds/api/users/default/uploads'; try { $newEntry = $yt->insertEntry($myVideoEntry, $uploadUrl, 'Zend_Gdata_YouTube_VideoEntry'); } catch (Zend_Gdata_App_HttpException $httpException) { echo $httpException->getRawResponseBody(); } catch (Zend_Gdata_App_Exception $e) { echo $e->getMessage(); }/**sterge video ca ne-am facut treaba**/ unlink('video/'.$nume[$numar].'-'.$v.'.flv');/**baga in baza de date ce a uploadat**/ //daca vrei sa le contorizezi, dai un insert $v ++;// trecem la urmatorul video cu acelasi $nume[$numar];/**sleep un pic sa se calmeze**/ sleep(1); }/**a terminat cu videoul, redirect la urmatorul**/print 'Redirect in 10 de secunde...<meta http-equiv="refresh" content="10;url=?getVideo&dinCache&numar='.($numar + 1).'">';}?> poza: http://img194.imageshack.us/img194/6728/snapshot1wg.pngam cenzurat ce site promovez, e scumpa banda si au cate unii idei sa dea degeaba cu havyj hacker version 2011 cracked by mihaita_boss2011@yahoo.com care a spart nasa Quote
zonamea Posted November 20, 2011 Report Posted November 20, 2011 Si ce face pana la urma ca eu tot nu inteleg, sunt incepator Quote
GarryOne Posted November 20, 2011 Report Posted November 20, 2011 uploadeaza clipuri porno pe youtube automat Quote
bDyds Posted November 22, 2011 Report Posted November 22, 2011 Interesant si foarte util, o sa fac o aplicatie cu asta. Quote