Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Сбор данных с интернета : Теория и Решения. Многопоточный PHP сборщик поисковых подсказок


В предыдущих статьях я описал как создать многопоточные поисковые сборщики на PHPпо следующим системам :
  • Google Suggest - сборщик поисковых подсказок Google
  • Yandex Suggest- сборщик поисковых подсказок Yandex
  • Rambler Suggest- сборщик поисковых подсказок Rambler
  • Nigma Suggest- сборщик поисковых подсказок Nigma
Весь код рабочий и выполняет свои задачи. Теперь зайдем с точки зрения удобств. Просто перепишем сборщик так, чтобы можно было запускать сразу сборщики всех типов за один раз. Для этого создадим конфигурационный файл \in\threads_cfg.in следующего вида :

аббревиатура сборщика;Число потоков gsu;10 ysu;10 nsu;10 rsu;10

Здесь мы указываем что надо запустить сборщики четырех типов, каждый в десять потоков. Далее готовим папку src - там создаем 4 файла для запуска каждого типа сборщика поисковых результатов в один поток :

  • gsu.php
  • nsu.php
  • rsu.php
  • ysu.php
Теперь модифицируем класс CMultiThreadLauncher, создающий потоки. Добавляем чтение и обработку конфигурационного файла для создания потоков и добавляем запуск потоков. И запускаем на выполнение. В итоге мы имеем одновременный запуск сборщиков любого типа в заданное число потоков. У всех сборщиков одинаковые входные данные запросов src/queries.txt и прокси src/proxy.txt. Эти данные делятся согласно числу потоков для каждого типа сборщика и запускается сбор.

пример сбора поисковых результатов с различных поисковых систем

Материалы :

Как всегда весь исходный код по этой статье можноскачать здесь. Руководство «Как запустить этот и другие PHP скрипты с этого сайта» всегда можно найтиздесь. Где взять платные и бесплатные прокси сервера, можно найтиздесь. А где взять поисковые запросы и ключевые слова можнонайти здесь. Пожелания и предложения по коду и сотрудничеству можно присылать на почту или в комментарии.


В избранное