Описание:
Сайт за сваляне на видео клипове от vbox7.com
Връзка:
Изходен код:
https://github.com/Nanich87/Vbox7-Downloader
Изглед:

Описание:
Сайт за сваляне на видео клипове от vbox7.com
Връзка:
Изходен код:
https://github.com/Nanich87/Vbox7-Downloader
Изглед:
Описание:
Това е работещ клас на PHP за сваляне на видео файлове от VBOX7.
Използва CURL за изпращане на POST REQUEST, който връща директния URL адрес към видео файла.
Този клас може да се ползва и модифицира без никакви ограничения.
Автор: GNNMobile.eu
Код:
<?php | |
class VBox7 { | |
private $vid = null; | |
private $url = null; | |
public function setVideo($vid){ | |
$this->vid = $vid; | |
} | |
public function execute(){ | |
if (isset($this->vid)) { | |
$url = 'http://vbox7.com/play/magare.do'; | |
$body = sprintf('vid=%s', $this->vid); | |
$c = curl_init($url);curl_setopt($c, CURLOPT_POST, true); | |
curl_setopt($c, CURLOPT_POSTFIELDS, $body); | |
curl_setopt($c, CURLOPT_RETURNTRANSFER, true); | |
$page = curl_exec($c); | |
curl_close($c); | |
if (preg_match('@(http:\/\/media[0-9]+\.vbox7\.com\/s\/[a-z0-9]{2}\/[a-z0-9]+\.)(flv|mp4)@ui', $page, $matches)) { | |
$this->url = $matches[0]; | |
return true; | |
} | |
} | |
return false; | |
} | |
public function getVideo(){ | |
return $this->url; | |
} | |
} |
Пример:
$vbox = new Vbox7;
$vbox->setVideo($_POST['video']);
if ($vbox->execute()) {
echo '<a href="'.$vbox->getVideo().'">свали видео файл</a>';
}
Описание:
PHP клас за сваляне на видео файлове от Vbox7.com
Код:
<?php | |
/** | |
* PHP клас за сваляне на видео файлове от vbox7 | |
* @author GNNMobile.eu | |
*/ | |
class VboxDownload | |
{ | |
private $maxMediaServers = 30; | |
public function getUrl($videoID) | |
{ | |
$return = array( | |
'success' => false, | |
'url' => null, | |
'errors' => null | |
); | |
if (!preg_match('/^[a-z0-9]+$/u', $videoID)) { | |
$return['errors'][] = 'Невалидно video-id'; | |
} | |
if ($return['errors'] == null) { | |
for ($id = 1; $id < $this->maxMediaServers; $id++) { | |
$mediaServer = str_pad($id, 2, "0", STR_PAD_LEFT); | |
$dir = substr($videoID, 0, 2); | |
$url = sprintf("http://media%s.vbox7.com/s/%s/%s.flv", $mediaServer, $dir, $videoID); | |
if ($this->remoteFileExists($url) === true) { | |
$return['success'] = true; | |
$return['url'] = $url; | |
break; | |
} | |
} | |
if ($return['success'] === false) { | |
$return['errors'][] = 'Няма намерен файл'; | |
} | |
} | |
return $return; | |
} | |
private function remoteFileExists($url) | |
{ | |
$ch = curl_init($url); | |
curl_setopt($ch, CURLOPT_NOBODY, true); | |
curl_setopt($ch, CURLOPT_TIMEOUT, 0.1); | |
if (curl_exec($ch)) { | |
$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); | |
if ($statusCode == 200) { | |
return true; | |
} | |
} | |
curl_close($ch); | |
return false; | |
} | |
} |
Други: