X-Scripts

Power by humanemulator

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

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


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

Скрипт XHE для создания карты сайты.

Предлагаем вашему вниманию скрипт, который создаёт карту сайта в xml формате и в виде страницы для сайта. Скрипт сам раставляет приоритет в зависимости от степени вложенности страницы. Главной странице назначается 1.0. Страницам следующего уровня 0.8, потом 0.6 всем остальным назначается значение по умолчанию 0.5. Скрипт имеет фильтра, что бы не добавлять не нужные ссылки или картинки или видео.

В результате работы скрипта по заданному пути появляется файлы sitemap.xml и sitemap.php.
Sitemap.xml строиться на основе протокола для карт сайта. Про этот протокол можно прочитать тут
Sitemap.php создаётся на основе шаблона страницы вашего сайта.

Пример XML файла с результатами:

<?xml version="1.0" encoding="UTF-8"?>
	
	<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
	
	<url>
	<loc>http://humanemulator.net/index.php</loc>
	<changefreq>daily</changefreq>
	<priority>1.0</priority>
	</url>

<url>
		<loc>http://humanemulator.net/interface.php</loc>
		<changefreq>weekly</changefreq>
		<priority>0.8</priority>
		</url>

<url>
		<loc>http://humanemulator.net/interface/main-menu.php</loc>
		<changefreq>monthly</changefreq>
		<priority>0.6</priority>
		</url>

<url>
		<loc>http://humanemulator.net/interface/main-menu/file.php</loc>
		</url>

<url>
		<loc>http://humanemulator.net/interface/main-menu/edit.php</loc>
		</url>

<url>
		<loc>http://humanemulator.net/interface/main-menu/type.php</loc>
		</url>
и т.д.

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

// ////////// настройки скрипта///////////////////
// проверяемый сайт
$site="http://humanemulator.net/";
// главная страница сайта
$main_page=$site."index.php";
// путь к шаблону для создания карты сайта
$temp_path="/data/template.php";
// папка с результатами
$res_path="/res/";

// проверочная строка 
$error_404="Error 404: File Not Found";

// фильтр по словам в href
// задавать через , 
// какие ссылки не обрабатывать
$filter="/forum/,/images/,#,.jpg,.mp4";

Сам скрипт:

<?php
/* ** 
//  Наш сайт 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/";
// главная страница сайта
$main_page=$site."index.php";
// путь к шаблону для создания карты сайта
$temp_path="/data/template.php";
// папка с результатами
$res_path="/res/";

// проверочная строка 
$error_404="Error 404: File Not Found";

// фильтр по словам в href
// задавать через , 
// какие ссылки не обрабатывать
$filter="/forum/,/images/,#,.jpg,.mp4";
// режим отладки
$dbg=true;

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

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

// чистим предыдущие данные
$file_os->delete($res_path."sitemap.php");
$file_os->delete($res_path."sitemap.xml");
$file_os->delete($res_path."tmp.txt");

// создать sitemap.xml
create_xml($main_page);
// добавим главную страницу в массив
$pgl=new PageLinks();
$pgl->page=$main_page;
$pgl->link_info=$main_page;
$a_links=array($pgl);
// собираем и проверяем 
for($k=0;$k<count($a_links);$k++)
{
    // получаем страницу
    $pg=trim($a_links[$k]->page);
      // проверяем фильтры
    if(!check_filter($pg))
       continue;
  
    // переходим на сайт
    $browser->navigate($pg);

    // проверить на 404
    if(check_page_404($pg))
       continue;

    // добавим в sitemap.xml 
    if($k>0)
    {
       add_to_xml($pg);
       // запишем во временный файл
		$textfile->add_string_to_file($res_path."tmp.txt",$a_links[$k]->link_info."\n",60) ;
    }

	 // получим все 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); // если ещё не проверяли проверим // добавим проверяемую страницу if(!is_a_exists($pg_href)) { // строка для записи во временный файл $in_txt=$anchor->get_inner_text_by_href($pg_href1,false); $str=""; // если нет текста вместо него href if($in_txt=="") $str="$pg_href
"; else $str="$in_txt
"; $pgl=new PageLinks(); $pgl->page=$pg_href; $pgl->link_info=$str; $a_links[]=$pgl; } } } // запишем в файл закрывающий тэг $textfile->add_string_to_file($res_path."sitemap.xml","\n\n",60); // создадим sitemap.php файл $links=$textfile->read_file($res_path."tmp.txt",60) ; $templ =$textfile->read_file($temp_path,60); $templ=str_replace("{SITE_MAP}",$links,$templ); // запишем файл $textfile->write_file($res_path."sitemap.php",$templ,60) ; debug_mess(date("\[ d.m.y H:i:s\] ")." скрипт закончил работу
"); // Quit $app->quit(); ?>



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

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

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

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