X-Scripts

Power by humanemulator

НАШИ КОНТАКТЫ:
ICQ My ICQ 625657402: 625657402
Наш скайп: igor_sev2
Email : order@x-scripts.com

Сообщество программистов и манимейкеров


Скрипт XHE проверки битых ссылок на сайте.

Предлагаем вашему вниманию скрипт, который проверяет ссылки на сайте. Скрипт идёт по всем страницам сайта и прокликивает все ссылки в том числе и ссылки загрузки файлов. Для более быстрой работы скрипта рекомендуется отключить картинки и другие настройки браузера, запретить показывать сообщения и тд.
Если на сайте есть ссылки с авторизацией можно использовать функцию $browser->set_default_authorization($login,$password);
Используя функции: $browser->disable_download_file_dialog($enable); и $browser->set_default_download($folder); можно проверить скачиваются ли все файлы с сайта.

В результате работы скрипта по заданному пути появляется файл, в котором записываются данные по битым ссылкам в следующем формате:
страница где находиться битая ссылка;href битой ссылки;текст битой ссылки

Пример файла с результатами:
http://humanemulator.net/interface/toolbar.php;http://humanemulator.net/171;Файл http://humanemulator.net/interface/toolbar.php;http://humanemulator.net/185;Скрипты http://humanemulator.net/interface/toolbar.php;http://humanemulator.net/205;Справка

Настройки скрипта:

// ////////// настройки скрипта///////////////////
// проверяемый сайт
$site="http://humanemulator.net/";
// путь к файлу с плохими ссыками
$path_bad_links="./res/bad_links.txt";
// проверочная строка, по которой мы определяем страницу 404
$error_404="Error 404: File Not Found";
// фильтр по словам в href ссылок
// задавать то что не нужно собирать через ,
// например: /forum/,/objects/, и т.д.
$filter="/forum/";

// режим отладки - для вывода сообщений в панель отладки
$dbg=true;

Сам скрипт:

/* ** 
//  Наш сайт http://x-scripts.com
//  Скрипт проверки битых ссылок на сайте.
//  по любым вопросам касающимся скрипта 
//  можно написать нам на мыло order@x-scripts.com
** */
$xhe_host ="127.0.0.1:7010";

// The following code is required to properly run XWeb Human Emulator
require("../../Templates/xweb_human_emulator.php");

// ////////// настройки скрипта///////////////////
// проверяемый сайт
$site="http://humanemulator.net/";
// путь к файлу с плохими ссыками
$path_bad_links="./res/bad_links.txt";
// проверочная строка 
$error_404="Error 404: File Not Found";
// фильтр по словам в href
// задавать через ,
$filter="/forum/";

// режим отладки
$dbg=true;

// /////////////////// дополнительные модули /////////////////////
// функции 
require_once("functions.php");

// ///////////////////// script /////////////////////////////////////////////////////////
debug_mess(date("\[ m.d.y H:i:s\] ")." скрипт запустили");

// добавим главную страницу в массив
$pgl=new PageLinks();
$pgl->page=$site;
$pgl->link_info=$site;
$a_links=array($pgl);

// чистим данные
$file_os->delete($path_bad_links);

// собираем и проверяем 
for($k=0;$k<count($a_links);$k++)
{
    // получаем страницу
    $pg=$a_links[$k]->page;
      // проверяем фильтры
    if(!check_filter($pg))
       continue;
    
    // переходим на сайт
    $browser->navigate($pg);
    // проверить на 404
    if(check_page_404($a_links[$k]->link_info))
       continue;

	 // получим все href-ы на странице
	$hrefs=$anchor->get_all_hrefs();
	// преобразуем в массив
	$hrefs=explode("
",$hrefs); // пройтись по всем hrefs for($ii=0; $ii<count($hrefs); $ii++) { $pg_href=trim($hrefs[$ii]); // проверяем внутренняя ли ссылка if(strpos($pg_href,$site)===false) continue; // строка для получения текста ссылки $pg_href1=str_replace($site,"",$pg_href); // строка для запилси в файл с результатами $str="$pg;$pg_href;".$anchor->get_inner_text_by_href($pg_href1,false); // если ещё не проверяли проверим // добавим проверяемую страницу в массив if(!is_a_exists($pg_href)) { // создадим объект с данными по ссылке $pgl=new PageLinks(); $pgl->page=$pg_href; $pgl->link_info=$str; $a_links[]=$pgl; } } } debug_mess(date("\[ d.m.y H:i:s\] ")." скрипт закончил работу
"); // Quit $app->quit();



Скрипт написан 28.08.2012 в Human Emulator 4.4.19 Advanced. На момент публикации статьи 28.08.2012 скрипт был рабочий.

Этот скрипт работает в Demo версии программы Human Emulator. Посмотреть все скрипты для Demo и Скачать Demo

скачать скрипт
Количество скачиваний: 2666

<< Другие скрипты

Human Emulator Free!
Бесплатная версия программы Human Emulator!
Скачать программу можно тут!