Поиск недоступных видеороликов с видеохостингов

Идея написать данный инструмент пришла, когда я очередной раз искал видео, что вставлены на нашем сайте с видеохостинга Ютюб, и те, что были удалены автором или админами Ютюба, или быть может на видео было наложено ограничение, например возрастное. Зачем я ищу эти видео, я рассказывал в теме: Удаление страниц сайта, что утратили свой контент.

И так, что делает данный инструмент? Проверяет видеоролики, что загружены на сервера Ютюба и вставлены на наш сайт. Если видео удалено или имеет ограничение, то есть видео будет недоступно на нашем сайте, инструмент выводит на экран ссылку на это видео. Что делать со страницей недоступного видеоролика, решаем сами, я думаю удалять такие страницы.

На данный момент код инструмента выглядит так:
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);

ob_start();
define('PHPFOX',     true);
define('PHPFOX_DS',  DIRECTORY_SEPARATOR);
define('PHPFOX_DIR', dirname(__FILE__) . PHPFOX_DS);
include(PHPFOX_DIR . 'include' . PHPFOX_DS . 'init.inc.php');

$rows = phpfox::getLib('database')
	->select('v.video_id, ve.video_url')
	->from(phpfox::getT('video'), 'v')
	->join(phpfox::getT('video_embed'), 've', 'v.video_id = ve.video_id')
	->execute('getSlaveRows');

foreach ($rows as $row)
{
	if (strpos($row['video_url'], 'youtu.be') !== false)
	{
		$part = explode('/', $row['video_url']);
		$code = end($part);

		$html = phpfox::getLib('request')->send('https://www.youtube.com/watch?v=' . $code, [], 'GET');
		preg_match('|"playabilityStatus":{"status":"(.*?)"|is', $html, $status);
		if (in_array($status[1], ['ERROR', 'LOGIN_REQUIRED']))
		{
			$videoURL = phpfox::getParam('core.path') . 'video/' . $row['video_id'] . '/';
			echo '<a href="' . $videoURL . '" target="_blank">' . $videoURL . '</a><br />';
		}
	}
}

ob_end_flush();

Копируем код в файл, например, "tool.php", заливаем его в корень сайта и переходим по ссылке "site/tool.php". Ждем, когда сценарий просканирует все видеозаписи. Это может занять несколько минут.

После удаления страниц с несуществующим видео, рекомендую удалить данные страницы из индекса поисковых систем, в панели вебмастера ПС.