• Страница 1 из 1
  • 1
Модератор форума: likbezz  
Скрипты и коды для юкоз - Форум аццкого кодера » PHP и SaaS хостинг, CMS платные и бесплатные, обсуждения и вопросы по теме » Интересные PHP-скрипты-ты от пользователей, Исходники » Скрипт проверки видео vk com на доступность.
Скрипт проверки видео vk com на доступность.
Дата: Пятница, 24.05.2013, 01:16 |
Axse
Лейтенант
Группа: Пользователи
Сообщений: 52
Награды: 0
Репутация: 2
Статус: Offline


В соц сети vk в последние время начали в плотную удалять фильмы и вот понадобился такой скрипт, пришлось заказывать. Может кому пригодится. Хорошая вещь но глючит иногда. Нужно делать что бы хранилось все в базе данных.

В корень сайта файл vk_check_video_data.csv и vk_check_video.php
На vk_check_video_data.csv права 666
Содержание vk_check_video.php
Код
<?php
class VK_check_video {

  public $data = array();
  public $csv_filename = 'vk_check_video_data.csv';
  public $csv_delimiter = ";";
  public $cache_time = 86400;

  public function load()
  {
   $this->loadCSV();
   return TRUE;
  }

  public function save()
  {
   $this->saveCSV();
   return TRUE;
  }

  public function getContent($url)
  {
   return file_get_contents($url);
  }

  public function issetData($src_page, $url_video)
  {

   foreach($this->data as $data)
   {
    $time = time() - (int)$data[2];
    if($data[0] == $src_page && $data[1] == $url_video && $time > $this->cache_time) {
     return TRUE;
    }  
   }
   return FALSE;
  }

  public function checkVideo($src_page, $url_video)
  {
    
   if($this->issetData($src_page, $url_video)) {
    return FALSE;
   }

   $content = $this->getContent($url_video);

   $check_result = preg_match('/< *object[^>]/i',$content);

   $this->data[]=array($src_page, $url_video, $check_result, time());

   return TRUE;
  }

  public function loadCSV()
  {
   if (($handle = fopen($this->csv_filename, "r")) !== FALSE) {
       while (($data = fgetcsv($handle, 1000, $this->csv_delimiter)) !== FALSE)  
       {
           $this->data[] = $data;
       }
       return fclose($handle);
   } else {
    return FALSE;
   }
  }

  public function saveCSV()
  {
   if(!$fp = fopen($this->csv_filename, 'w')) {
    return FALSE;
   }
   foreach ($this->data as $data)  
   {
       fputcsv($fp, $data, $this->csv_delimiter);
   }
   return fclose($fp);
  }

  public function getBadVideo()
  {
   $return_data = array();
   foreach($this->data as $data)
   {
    if($data[2] == 0 ) {
     $return_data[] = $data;
    }  
   }
   return $return_data;
  }
}

$VK_cv =new VK_check_video;
$VK_cv->load();

if(isset($_GET['url']) && isset($_GET['src']) && count($_GET['src']) > 0) {
  foreach($_GET['src'] as $video) {
   $VK_cv->checkVideo($_GET['url'], $video);
  }
  $VK_cv->save();
  die('check_ok');
}

?>
<table style="font-size: 11px;">

  <thead>
   <tr>
    <!--<th>VK(URL)</th>-->
    <th>PAGE(URL)</th>
    <th>LAST CHECK</th>
   </tr>
  </thead>
  <tbody>
   <?php foreach($VK_cv->getBadVideo() as $bad_video): ?>
   <tr>
    <!--<td><a href="<?php echo $bad_video[1]; ?>"><?php echo $bad_video[1]; ?></a></td>-->
    <td><a href="<?php echo $bad_video[0]; ?>" target="_blank"><b><?php echo $bad_video[0]; ?></b></a></td>
    <td><?php echo date('d.m.Y H:i',$bad_video[3]); ?></td>
   </tr>
   <?php endforeach; ?>
  </tbody>
</table>



А эту часть в тело где размещается сам iframe
Код
<script type="text/javascript">

var vk_videos = [];

$("iframe").each(function() {
   var src = $(this).attr('src');
   if(src.indexOf('vk.com') !== -1) {
    vk_videos.push(src)
   }
});
if(vk_videos.length > 0 ) {
  $.get("/vk_check_video.php", { 'url': document.location.href, 'src[]': vk_videos });
}

</script>


Смотрим тут http://сайт.ru/vk_check_video.php
Или добавляем в htaccess
Код

RewriteRule ^chek_vk.html$ vk_check_video.php [L]

и уже смотрим тут
http://сайт.ru/chek_vk.html


 
Дата: Суббота, 25.05.2013, 08:41 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Axse,
Скрипт хорош, но не тем..
Его переделать под другое, убрать лишнее и отдавать свой плеер + кнопку скачать, со ссылкой на исходный видеофайл.
Не через фрейм, а кодом, или просто ссылку на файл, типа:

Код
<object type="application/x-shockwave-flash" data="/uppod.swf" width="400" height="300">
<param name="movie" value="/uppod.swf" />
<param name="flashvars" value="file=/vk_check_video.php?url=сылка_на_страницу_с_фильмом" />
</object>


 
Дата: Воскресенье, 26.05.2013, 00:56 |
Axse
Лейтенант
Группа: Пользователи
Сообщений: 52
Награды: 0
Репутация: 2
Статус: Offline


Цитата (likbezz, Сб, 25.05.2013, 08:41:50)
отдавать свой плеер + кнопку скачать


У меня была идея отдавать через свой плеер, пробовал в uppod и ютубовский и вк транслировать , но начинают многие жаловаться что не работает плеер. Хотя во всех браузерах тестил все ок. И еще один момент, если свой флэш плеер то получается весь видео поток будет проходить через мой сервер? а это если да то не хорошо, безлимитного сколько искал не нашел. Многие как бы и говорят что безлимиты но если обговорить что будет траф терабайты то сразу отнекиваются, да вроди и канал тогда нужен приличный, уж легче на свой сервер заливать в таком случае и платить бешеные деньги = )


 
Дата: Воскресенье, 26.05.2013, 12:10 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Axse,
Цитата (Axse, Вс, 26.05.2013, 00:56:40)
пробовал в uppod и ютубовский и вк транслировать , но начинают многие жаловаться что не работает плеер. Хотя во всех браузерах тестил все ок

А у меня наоборот, на некоторых типа “официальных” видео сервисах не пашет..
Смотря как вставлял, в смысле кода плеера.

Цитата (Axse, Вс, 26.05.2013, 00:56:40)
И еще один момент, если свой флэш плеер то получается весь видео поток будет проходить через мой сервер? а это если да то не хорошо,

Зачем? просто перебрасывать поток на источник через location.


 
Дата: Воскресенье, 26.05.2013, 13:30 |
Axse
Лейтенант
Группа: Пользователи
Сообщений: 52
Награды: 0
Репутация: 2
Статус: Offline


Цитата (likbezz, Вс, 26.05.2013, 12:10:13)
через location


Это я не понимать = )

Вот кстати код
Код

<object data="http://st.kset.kz/pl/pl.swf?v=5" type="application/x-shockwave-flash" width="640" height="380" name="flash_object" id="flash_object"><param name="bgcolor" value="#ffffff" /><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="movie" value="http://st.kset.kz/pl/pl.swf" /><param name="flashvars" value="st=http://kset.kz/v.php?id=8744441" /></object>


Работает во всех браузерах кроме мозилы. А вот как узнать какая ошибка выдается?

Добавлено (26.05.2013, 13:30)
---------------------------------------------
белый экран, и по жалобам на уппод у меня на сайте у них тоже белый экран. Это может в версии плеера, хз, как вывести ошибку

 
Дата: Воскресенье, 26.05.2013, 14:12 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Axse,
Цитата (Axse, Вс, 26.05.2013, 13:30:30)
Вот кстати код
Работает во всех браузерах кроме мозилы. А вот как узнать какая ошибка выдается?

У меня работает ) Скопировал один-в-один.


...

Цитата (Axse, Вс, 26.05.2013, 13:30:30)
А вот как узнать какая ошибка выдается?

Смотря какая.. если требуется какая-то версия флеш преера, то проверять какая установлена и выводить если меньше,

Прикрепления: 0882912.png (19.4 Kb)

 
Дата: Понедельник, 27.05.2013, 01:04 |
Axse
Лейтенант
Группа: Пользователи
Сообщений: 52
Награды: 0
Репутация: 2
Статус: Offline


страно, мне жаловался сосед, что типа неработает, я писал ему что это мозг у тебя не работает, скачал мозилу и у меня не работает :D... мозг ...

 
Дата: Понедельник, 27.05.2013, 02:49 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Axse,
Цитата (Axse, Пн, 27.05.2013, 01:04:42)
скачал мозилу и у меня не работает

Во первых, смотря что скачал. Могла просто стоять блокировка подобного контента.
Во-вторых, требуется свежий установленный плагин флеш плеера. по умолчанию я без понятия какой там.
Ну и в третьих, проверять всегда надо на чистых страницах, где ничего кроме плеера нет. У меня например флеш облако, даже системное, не кажет на сайте. А вот на чистой странице без проблем. Где-то конфликт стилей..


 
Дата: Среда, 29.05.2013, 00:51 |
Axse
Лейтенант
Группа: Пользователи
Сообщений: 52
Награды: 0
Репутация: 2
Статус: Offline


да вроде с оф сайта

 
Дата: Среда, 29.05.2013, 01:18 |
likbezz
Аццкий кодер
Группа: Администраторы
Сообщений: 9093
Награды: 23
Репутация: 459
Статус: Unknown


Axse,
Цитата (Axse, Ср, 29.05.2013, 00:51:44)
да вроде с оф сайта

Тогда смотри настройки.
По любому, если не отображается лишь у одного/3 - это одно, а если у большинства - это другое.
У меня отображается. Включая ИЕ6,7 с настройками по умолчанию.


 
Дата: Суббота, 14.09.2013, 16:22 |
satanbass
Рядовой
Группа: Зарегистрированные
Сообщений: 1
Награды: 0
Репутация: 0
Статус: Offline


Не получается.
По ссылке m-movies.ru/vk_check_video.php - показывает только:

Код
PAGE(URL) LAST CHECK
01.01.1970 03:00


Все сделал по инструкции...

Добавлено (14.09.2013, 16:22)
---------------------------------------------
likbezz, помогите, если вас не затруднит с данным скриптом.

 
Скрипты и коды для юкоз - Форум аццкого кодера » PHP и SaaS хостинг, CMS платные и бесплатные, обсуждения и вопросы по теме » Интересные PHP-скрипты-ты от пользователей, Исходники » Скрипт проверки видео vk com на доступность.
  • Страница 1 из 1
  • 1
Поиск:


Мобильная версия