Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Требуется написать 3 скрипта на PHP для сбора информации с заданных сайтов с помощью предопределённых регулярных выражений.

start.php и classes/worker.php используют таблицу crawler_sites с полями id, domain, config, qn_url_done, qn_url_err, sts

Все ошибки фиксируются функцией SaveLog(string).

Перед выполнением задания исполнитель получит дополнительные вспомогательные файлы: готовые регулярные выражения, функции типа DetermineNAME, обработка кодировок, картинок, регулярных выражений и т.п.

Ориентировочный алгоритм приведён ниже.

---

start.php выполняет следующие действия:

1. Очищает таб.crawler_sites.

2. Заполняет таб.crawler_sites из CSV-файла. Строка берётся в том случае, если колонка use==1.

3. Вызывает функцию Init() из внешнего файла (proc.php).

4. Запускает worker.php?wid=1 в отдельном окне.

---

worker.php выполняет следующие действия:

1. Создаёт экземпляр класса CWorker.

2. Вызывает функцию CWorker->Run({$_GET['wid']})

---

classes/worker.php выполняет следующие действия:

10. Берёт данные сайта из crawler_sites

20. Инициализирует управляющие параметры из config

30. Составляет массив URLs на основе crawler_sites

40. Перед каждым открытием страницы:

a) если sts==30, тогда завершить работу;

b) если qn_url_done > MAX_SITE_URL_TO_PROCESS, тогда завершить работу;

c) если qn_url_err > MAX_SITE_URL_ERR, тогда завершить работу.

50. Открывает URL и получает содержимое страницы.

60. Вызывает функцию DetermineInfo() для определения массива информации arInfos.

70. Если параметр Info>0, вызывает функцию DetermineInfoDet() для каждого элемента массива arInfos для определения дополнительной информации.

80. Если присутствует метка DN, то вызывает функцию DetermineCatForD(DN, &$arInfos) для определения ID категории контента.

90. Сохраняет картинки в папку PATH_IMAGES/domain в двух вариантах - _s.jpg и _l.jpg

100. Вызывает функцию DetermineURLnext() для определения URL следующей страницы.

110. Переходит к п.40

13 лет назад
goodpayforyou
NaN летУкраина
15 лет в сервисе
Была
12 лет назад