Написать скрипт для граббинга нескольких сайтов

9 000 руб. за проект • безналичный расчёт, электронные деньги
22 февраля 2019, 08:16 • 17 откликов • 71 просмотр
Нужно написать скрипт на Php или Python который будет:

1) Загружать данные с трёх небольших сайтов досок объявлений (структура разных сайтов различна)
2) Сохранять данные в единообразном формате, вместе с изображениями, в базе данных (mysql / sqlite / postgresql, на ваш выбор)

Формат данных:

Таблица "раздел"
  • id
  • parent_id - ID родительского раздела (если есть)
  • name - название раздела
  • base_url - базовая ссылка (откуда взят раздел)
  • raw_content - "сырой контент" собранный со страницы (в html)
Таблица "объявление"
  • id
  • folder_id - ID раздела (из таблицы "раздел")
  • title - заголовок объявления
  • base_url - базовая ссылка (откуда взято объявление)
  • content - содержимое текста объявления
  • contacts - контактные данные объявления в виде JSON
  • raw_content - "сырой контент" собранный со страницы (в html)
Фотографии к объявлениям должны помещаться в отдельной папке, имена фотографий должны иметь формат <id>_<n>.<ext>, например 123_1.png - это значит фотография относится к объявлению с ID=123, и это первая фотография. Если у объявления будет несколько фотографий, то их имена файлов будут 123_1.png, 123_2.png, 123_3.png и так далее. Расширение в зависимости от исходного файла (png/jpeg/jpg/gif)

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

Пожелания к реализации:
Реализовать некий базовый класс (или классы) граббера, который будет включать в себя основной обобщённый функционал (загрузка страниц, создание записей в БД, переименование файлов и т.д.), а от него уже наследуются классы конкретных грабберов для конкретных сайтов, каждый из которых (грабберов) будет уметь обрабатывать конкретный сайт.
Это, с одной стороны, снизит ваши трудозатраты, а с другой, даст возможность дальнейшего расширения.

Сайтов пока 3, адреса сообщу позже.
Защиты от грабберов скорее всего нет.
Отзывы
R50 00477a8e5d930de4c9a378f875adee4a
Заказчик
Нужно было написать граббер для нескольких сайтов, а времени сделать это самому не было. Заказал, договорился с Даниилом.
Все четко, уложился в оговоренные 2 дня, скрипт работает, код легко расширять на другие сайты.
~ 5 лет назад
R50 752c6b62b3419e0097c95c6432a40ad3
Фрилансер
Отлично поработали!
Чётко поставленная задача, никаких задержек, никаких проблем)
~ 5 лет назад