Многопоточный парсер внешних ссылок с сайтов

Виталий14 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
20.11.2010

Здравствуйте.

Требуется приложение на PHP+mysql - многопоточный парсер внешних ссылок с сайтов.

Структура:

1. Админ.часть

- настройка скорости сканирования (количество потоков)

- настройка глубины сканирования (количество кликов от главной страницы)

- загрузка txt файла со списком урлов (хосты или полный адрес)

- загрузка списка урлов через форму

- индикация состояния сканирования (количество хостов в очереди, кол-во готовых хостов, общая статистика, по желанию трафик)

- блокировка хостов (черный список сканирования)

2.Парсер

- многопоточность

- приблизительная структура бд: id, host, datetime последнего сканирования, url страницы, sum_links количество на странице, anchors анкоры ссылок в формате url_acceptor::anchor;;url_acceptor::anchor, status ответ сервера (0 - ожидание), level количество кликов от главной (0,1,2 и т.п.), error код ошибки

- предположительный размер БД 10-20млн. страниц (или 50-100 тыс. хостов)

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

- внешними ссылками считать не закрытые от поисковых систем тегами noindex и nofollow

- подмена юзер-агента, реферера

- возможность работать через прокси (админ часть)

3.Пользовательский интерфейс

- обращение через GET запрос - ?host=site.ru

вывод суммы полей sum_links , где host=$_GET[host] , естественно с защитой от инъекций.

- обращение через GET запрос - ?host=site.ru&mode=view

вывод списка всех ссылок с хоста: url_acceptor - anchor

Бюджет неизвестен, предпочтение будет отдаваться при наличии уже действующего аналога или при предложении дополнительных возможностей или особого быстродействия.