![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 3.08.2009 Ostrzeżenie: (10%) ![]() ![]() |
Posiadam taki o to kod:
cli.php
megavideo.class.php
Więc mam ten kod. Ma on teoretycznie dawać mi link do pobrania linku z MegaVideo. Nie jestem świetny z PHP, wprawdzie praktycznei wogule się na tym nie znam. Jak doporowadzić to do stanu używalności? I czy ten kod faktycznie działa? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 3.08.2009 Ostrzeżenie: (10%) ![]() ![]() |
Teoretycznie chciałem to zrobić jako odwarzacz filmów MegaVideo. Link bezpośredni do filmu podczepić pod plejerka flv i w ten sposób omijać limit. W takim razie generując na serwerze nie zrobie tego w żaden sposób?
@edit Ależ musi się dać. Pomysł na początku powstał w mojej głowie. Szukając jakiś źródeł prostego skryptu do sciągania z MegaVideo natrafiłem na 2 strony, które wyprzedziły mnie pomysłem. Jedną z nich był serwis www.TV.Wrzuc.TO, z którym ty, b4x, chyba jesteś powiązany? @edit2 Kupa kombinowania. Niby mi nie ściaga filmu, ale postanowiłem spróbować podstawić pod JW Plejerka, mając taki kod: Kod <? class Megavideo { function __construct($url) { preg_match('#\?v=(.+?)$#', $url, $id); $this->id = $id[1]?$id[1]:$url; $this->getxml(); $parse = array ( 'runtimehms' => 'duration', 'size' => 'size', 's' => 'server', 'title' => 'title', 'description' => 'description', 'added' => 'added', 'username' => 'username', 'category' => 'category', 'views' => 'views', 'comments' => 'comments', 'favorited' => 'favorited', 'rating' => 'rating', 'k1' => 'key1', 'k2' => 'key2', 'un' => 'str'); foreach($parse as $key=>$val) { $this->parsexml($key, $val); } $this->size = round($this->size/(1024*1024)); } function get($what=false) { $all = array( "URL" => "http://www".$this->server. ".megavideo.com/files/". $this->decrypt($this->str, $this->key1, $this->key2)."/", "SIZE" => $this->size, "TITLE" => $this->title, "DURATION" => $this->duration, "SERVER" => $this->server, "DESCRIPTION" => $this->description, "ADDED" => $this->added, "USERNAME" => $this->username, "CATEGORY" => $this->category, "VIEWS" => $this->views, "COMMENTS" => $this->comments, "FAVORITED" => $this->favorited, "RATING" => $this->rating ); return $what&&array_key_exists(strtoupper($what),$all)?$all[strtoupper($what)]:$all; } function getxml() { $ch = curl_init ("http://www.megavideo.com/xml/videolink.php?v=".$this->id."&id=".time()); curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_HEADER, 0); $r = curl_exec($ch); curl_close($ch); $this->xml = $r; } function parsexml($attribute, $name) { preg_match("#\s$attribute=\"(.+?)\"#", $this->xml, $tmp); list(,$this->$name) = $tmp; } function decrypt($str, $key1, $key2) { $reg1 = array(); for($reg3=0; $reg3<strlen($str); $reg3++) { $reg0 = $str[$reg3]; switch($reg0) { case '0': $reg1[] = '0000'; break; case '1': $reg1[] = '0001'; break; case '2': $reg1[] = '0010'; break; case '3': $reg1[] = '0011'; break; case '4': $reg1[] = '0100'; break; case '5': $reg1[] = '0101'; break; case '6': $reg1[] = '0110'; break; case '7': $reg1[] = '0111'; break; case '8': $reg1[] = '1000'; break; case '9': $reg1[] = '1001'; break; case 'a': $reg1[] = '1010'; break; case 'b': $reg1[] = '1011'; break; case 'c': $reg1[] = '1100'; break; case 'd': $reg1[] = '1101'; break; case 'e': $reg1[] = '1110'; break; case 'f': $reg1[] = '1111'; break; } } $reg1 = join($reg1); $reg6 = array(); for($reg3=0; $reg3<384; $reg3++) { $key1 = ($key1 * 11 + 77213) % 81371; $key2 = ($key2 * 17 + 92717) % 192811; $reg6[] = ($key1 + $key2) % 128; } for($reg3=256; $reg3>=0; $reg3--) { $reg5 = $reg6[$reg3]; $reg4 = $reg3 % 128; $reg8 = $reg1[$reg5]; $reg1[$reg5] = $reg1[$reg4]; $reg1[$reg4] = $reg8; } for($reg3=0; $reg3<128; $reg3++) { $reg1[$reg3] = $reg1[$reg3] ^ ($reg6[$reg3+256] & 1); } $reg12 = $reg1; $reg7 = array(); for($reg3=0; $reg3<strlen($reg12); $reg3+=4) { $reg9 = substr($reg12, $reg3, 4); $reg7[] = $reg9; } $reg2 = array(); for($reg3=0; $reg3<count($reg7); $reg3++) { $reg0 = $reg7[$reg3]; switch($reg0) { case '0000': $reg2[] = '0'; break; case '0001': $reg2[] = '1'; break; case '0010': $reg2[] = '2'; break; case '0011': $reg2[] = '3'; break; case '0100': $reg2[] = '4'; break; case '0101': $reg2[] = '5'; break; case '0110': $reg2[] = '6'; break; case '0111': $reg2[] = '7'; break; case '1000': $reg2[] = '8'; break; case '1001': $reg2[] = '9'; break; case '1010': $reg2[] = 'a'; break; case '1011': $reg2[] = 'b'; break; case '1100': $reg2[] = 'c'; break; case '1101': $reg2[] = 'd'; break; case '1110': $reg2[] = 'e'; break; case '1111': $reg2[] = 'f'; break; } } return join($reg2); } } ?> <?php $zmienna = '{$obj->get(url)}'; $adres_megavideo = 'http://megavideo.com/?v=ZXHGPT6H'; $obj = new Megavideo($adres_megavideo); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>JW Player for Flash</title> <style type="text/css"> body { background-color: #fff; padding: 0 20px; color:#000; font: 13px/18px Arial, sans-serif; } a { color: #360; } h3 { padding-top: 20px; } ol { margin:5px 0 15px 16px; padding:0; list-style-type:square; } </style> </head> <body> <object id="player" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" name="player" width="400" height="315"> <param name="movie" value="player.swf" /> <param name="allowfullscreen" value="true" /> <param name="allowscriptaccess" value="always" /> <param name="flashvars" value="file=<?php print "{$obj->get(url)}"; ?><?php print "aaa.flv"; ?>" <embed type="application/x-shockwave-flash" id="player2" name="player2" src="player.swf" width="400" height="315" allowscriptaccess="always" allowfullscreen="true" flashvars="file=<?php print "{$obj->get(url)}"; ?><?php print "aaa.flv"; ?>" /> </object> <br><br><br> </body> </html> No i starym zwyczajem nie działa ; D Da radę ten link generować tak, żeby odtwarzacz chodził? Ten post edytował screv 28.01.2010, 10:42:38 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 06:33 |