X-Scripts

Power by humanemulator

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

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


Скрипт XHE Сборщик каталогов

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

Мы предлагаем вашему вниманию скрипт сборщик каталогов. Скрипт с помощью поисковой системы Google собирает в файл ссылки на каталоги. Принцип определения каталога это наличие на странице рабочей ссылки "Добавить сайт" или "добавить сайт". Если переход по ссылке совершен, значит это каталог. Так же в скрипт добавлены возможность определять есть ли в каталоге заданные темы и просит ли каталог ввести каптчу или нет. Если в каталоге нету заданной темы или он просит ввести каптчу, каталог не пишется в файл.

Теперь рассмотрим детальнее сам скрипт.

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

     
// ключи для поиска каталогов
$keys = file("./data/keys.txt"); 

В файле keys.txt содержатся поисковые запросы, которые мы вбиваем в Google для поиска каталогов. Формат файла:
каталог сайтов
добавить сайт
автокаталог

// для проверки тематики каталога 
$themas = file("./data/themas.txt"); 

В файле themas.txt лежит список тем, на которые мы проверяем каталоги. Формат файла:
авто
спорт

// файл с результатами
$res_catalogs = "./res/catalogs.txt"; Файл, в который пишутся каталоги.

// проверять ли тематику
$b_check_themas = false; - задаём проверять ли тематику.
// проверяем есть ли каптча
$b_check_captcha = false; - задаём проверять ли наличие каптчи

// глубина прохода в поисковые результаты
$cnt_pages = 15; - сколько страниц с поисковыми результатами для каждого запроса должен обработать скрипт.

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

2. Дополнительные модули:

// основные функции
require_once("functions.php"); - тут мы подключаем дополнительные функции для работы скрипта. Функции находятся в файле functions.php, 
который лежит в папке со скриптом.

3. Скрипт:

// задать время ожидания загрузки
$browser->set_wait_params(10,1); 

Это нововведение с версии 4.4.10. Теперь не надо вызывать функцию $browser->wait_for(); после каждого клика или перехода страницы. Достаточно один раз задать в начале скрипта с помощью этой функции. Параметры в функцию передаются аналогично wait_for.
описание функции wait_for

// стартовый индекс для поисковых запросов
$aa_st=0;
if (isset($argv[1])) 
   $aa_st = $argv[1];

// стартовый индекс ссылки на старнице
$ii_st=0;
if (isset($argv[2])) 
   $ii_st = $argv[2];

// индекатор текущей поисковой страницы
$crnt_page =1;
if (isset($argv[3])) 
   $crnt_page = $argv[3];

Эти три строчки используется при рестарте скрипта. Так как в IE имеются утечки при работе с некоторыми сайтами, то эти утечки унаследовал и Хуман, который основан на компоненте IE. Поэтому приходится при интенсивной работе скрипта с сайтами делать рестарт программы для обнуления памяти.

debug_mes("запустили для ключего слова с индексом $aa_st 
для поисковой страницы $crnt_page
для ссылки $ii_st
");

Вывод в окно отладки логов.

// пройдёмся по всем ключевым словам
for($aa=$aa_st; $aa < count($keys); $aa++)
{
    // получим ключевое слово
    $key = trim($keys[$aa]);
   
    // вывод в панель отладки
    debug_mes("ключевое слово: $key");

    // set 2 browser tabs
    $browser->set_count(2);
    // set active main browser tab
    $browser->set_active_browser(1,true);

     // navigate to google
    $browser->navigate("http://www.google.com");
  
    // задаём слово в поиск
    $input->set_value_by_name("q",$key);
    $input->click_by_name("q");

    $keyboard->send_key(32,true);

    sleep(2);

    // нажмём на поиск
    $keyboard->send_key(13,true);

    sleep(2);
    // если это рестарт перейдём на нужную страницу
    next_page(true);

Эта часть скрипта вводит поисковый запрос в Google, а так же делает переход на нужный запрос и нужную страницу с поисковыми результатами после рестарта.

// до тех пор пока есть ссылки с цифрами переходим
while(true)
{
    // получим все ссылки на сайты заключённые в тэгах <cite>
    $sites=$webpage->get_body_inter_prefix_all("","");
    $sites=explode("
",$sites); for($ii=$ii_st;$ii<count($sites);$ii++) { // переходим на сайт $site=str_replace("","",trim($sites[$ii])); $site=str_replace("","",$site); // вывод в панель отладки debug_mes("ссылка на каталог : ".$site); if($site=="") continue; // открыть и сделать активным новый браузер $browser->set_count(3); $browser->set_active_browser(2,true); $browser->navigate($site); // wait on browser $browser->wait_for(); // проверка на каталог if(!check_for_catalog("добавить сайт")) { // проврека на другой возможный текст check_for_catalog("Добавить сайт"); } $browser->close(); // закрываем и переходим обратно $browser->set_active_browser(1,true); // проверить надо ли перезапускать if($debug->get_cur_mem_size()>300000000) { // перезапускаем если привысели 300mb занимаемой памяти $app->restart($debug->get_cur_script_path(),"$aa $ii $crnt_page"); } } // не перешли на следующую страницу if(!next_page()) break; } // перед новым запросом обнули счётчик $crnt_page =1; }


Эта часть скрипта ходит по сайтам и проверяет каталоги.

// отсортировать и убрать дубликаты
$textfile->dedupe($res_catalogs,$res_catalogs,60);

Отсортируем и удалим дубликаты из файла с результатами.



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

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

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

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