Авторизация:
ПРОЕКТЫ ДАННОЙ КАТЕГОРИИ


Все проекты данной категории  -  79


TOP 10 ФРИЛАНСЕРОВ

Скрипты / Web-приложения

1EdWood
(35.3)
2artzavod
(31.7)
3bw
(27.0)
4softfacade
(22.5)
5Pilat66
(22.0)
6AlexWeb
(21.2)
7EgorovAlexey
(18.0)
8inpego
(15.8)
9parse
(14.9)
10Alwake
(13.9)

Скрипт для проверки страницы на признаки +

Скрипты / Web-приложения
Заказчик:
Фотография / Юзерпик
ОффлайнСмирнов Кирилл (cyrox)
(1.6)
В сервисе: 9 месяцев 1 неделя  |  Отзывы: 9
Бюджет: 50 USD  (Электронные платежные системы)
Приём предложений: 03.10.2008 - 03.10.2008
Статистика: Предложения: 2  |  Просмотры: 87 (40 пользователей)
Статус: Закрыт
Нужен скрипт на PHP 5.2.5 с работой на mySQL 4.1.22-standard (нужно, чтобы скрипт работал на хостинге с данными параметрами), который делает следующие вещи:

Берет из файлов длинные урлы, обрезает их, удаляет дубликаты (сверка с базой), добавляет в базу, парсит содержимое, проверяет на 2 признака, парсит ссылку, добавляет результат в базу.

Подробное описание:

В системе будет страничка с элементами управления:
«Добавить из папки upload» (добавляем урлы из файлов папки в базу, обработанные файлы удаляем)
«Запустить парсилку»

А также статистика:
Всего урлов:
Обработано: (тут выводим количество url со статусом 1 – таблица полей внизу описания)

1. Берем файлы из папки uploads и парсим их. В файлах записаны урлы в виде

http://sub1.site1.com/page32/page32.html
http://www.sub1.site1.com/page32/page33.html
http://sub2.site1.com/page32/page32.html
http://site2.com/page32/page32.html
http://site3.com/index
http://site3.com/index2

Нужно для всех файлов

а. Очистить домены от хвостов и удалить дубликаты, а также привести все домены к одному виду записи. То есть на выходе будет список:

http://sub1.site1.com
http://sub1.site1.com
http://sub2.site1.com
http://site2.com
http://site3.com
http://site3.com

б. Удалить дубликаты - на выходе получаем

http://sub1.site1.com
http://sub2.site1.com
http://site2.com
http://site3.com

То есть в mySQL у нас будет таблица с уникальными доменами (2-го и 3-го уровня - субдомены одного сайта считаются уникальными)

2. Заходим на сайт по url1, проверяем страницу на наличие признаков1.

-Если признаки нашли (хотя бы 1 из списка), то ставим checkresult=1, если не нашли ни одного, то ставим checkresult=0.

-Если признаки1 найдены на сайте, то ищем признаки2. Признаки 2 – это текст, который является анкором ссылки. При нахождении текста из признаков2 мы выдираем его ссылку и вставляем в url2. Например признаки 2 содержат слово «Сафари сегодня» в одной из строк. При находжении ссылки вида <a href=http://site.com/safari.html>Сафари сегодня</a>
Мы дерем ссылку http://site.com/safari.html и сохраняем в поле url2.

-Меняем status на 1

Содержимое url1 запрашивается с сервера, а управляющий парсингом скрипт запускается с локала через веб-интерефейс. Каждый обработанный url1 – новая точка на выводе. Через каждые 100 точек выводится ID следующего обрабатываемого url1/всего url1 (ID идут, начиная от 1 и дальше). Пример: …… …100/85302…….. ..200/85302…

Должна быть возможность экспорта содержимого базы в файл .csv в папку data в виде:

url1;checkresult;url2;status
url1;checkresult;url2;status

Если поле url2 пустое, то строка для данной записи выглядит так:
url1;checkresult;;status

Должна быть возможность повторного добавления новых записей в таблицу с уже существующими там записями. При этом повторные url1 не добавляются – только уникальные. И для новых url1 ставится status= 0, чтобы при запуске скрипта только новые записи обрабатывались.

Таблица должна иметь поля:

url1 (значение - проверяемый домен), checkresult (результат поиска первых признаков - 1 (найдены), 2 (не найдены), url2 (ссылка на внутреннюю страницу, найденная по 2-м признакам), status (1 - обработан, 0 - не обработан)

Признаки1 находятся в файле priznaki1.txt
Признаки2 находятся в файле priznaki2.txt


Параметры хостинга, где будет установлен скрипт.
PHP version 5.2.5
MySQL version 4.1.22-standard

Выбранные исполнители

Пользователь / Рейтинг Сумма Сроки Дата принятия
Фотография / Юзерпик
ОффлайнРошин Сергей (njkxxmlzprn)
(0.6)
В сервисе: 7 месяцев 1 неделя  |  Отзывы: 6 / 1
50 USD 1 день 03.10.2008 в 16:38
Отзыв фрилансера (+)