Обожаю искать вещи на барахолках, и чтобы не тратить время на OLX, создал бот, который делает это за меня

Оленка Пилипчак

Highload продолжает публиковать истории о pet-проектах, вошедших в топ-20 лучших по итогам голосования наших читателей. Параллельно эти проекты оценивает жюри из опытных разработчиков и инвесторов. Победителей конкурса мы планируем объявить 10 июля.

Лучшие проекты получат призы от компании Genesis: занявший первое место — Apple iPhone 12 64GB, второе место — наушники Marshall Monitor II ANC Black, третье — набор Arduino.

Дальше — рассказ разработчика Андрей Каплуненко о его pet-проекте —  агрегатор барахолок Sherlock.

Идея

Андрей Каплуненко — разработчик агрегатора барахолок Sherlock

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

Раньше я много покупал на eBay, но сегодня это стало не очень рационально, так как стоимость доставки из цивилизованных стран в Украину зачастую выше или сравнима с ценой товара. Поэтому какие-то запчасти и прочие «ардуинки» я покупаю на AliExpress, а если нужно что-то редкое, коллекционное или просто специфическое, то ищу на наших барахолках.

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

Реализация и технологии

Я построил свой агрегатор на Drupal 8, потому что компания, где я работал, как раз планировала переход с Drupal 7 на Drupal 8 и мне хотелось в нем побыстрее разобраться. В качестве СКВ используется Git.

На данный момент все реализовано на Drupal, поэтому там нет выделенной фронтендной части. Но в будущем я планирую перепилить проект, частично его упростить (а именно: покрыть больше маркетов — добавить Prom, Bigl, Oxo, Violity, но в то же время сделать проект проще: убрать поиск по расписанию с отчетами на почту). Бэкенд будет представлять собой чисто API (без фронтенда), а фронт будет отдельно написан на Vue, с чем мне поможет жена.

Сейчас основное узкое место — механизм кеширования картинок. Картинки объявлений тянутся по очереди средствами PHP, то есть в один поток, что получается очень медленно. Нужно будет прикрутить Guzzle или что-то подобное, еще не разбирался.

Также разные маркеты предоставляют картинки в разных форматах, иногда без указания расширения: приходится динамически определять их MIME-тип по содержимому и подставлять правильные расширения. В общем, сложность в том, что к каждому маркету нужен индивидуальный подход.

С хранением в базе состояния многошаговой Drupal-формы с произвольным количеством полей тоже пришлось повозиться — это не так просто сделать, как казалось изначально.

Агрегатор барахолок Sherlock

В какой стадии проект

Проект готов и работает. Но буду переделывать.

Аудиторные показатели слабые. Я и не рекламировал его особо. Думаю, он слишком сложен. Я показывал многим людям, и они сразу же начинали использовать конструктор поисковых запросов как угодно, но не так как нужно.

Форма для создания поисковых фраз в Sherloсk

В результате заполнения формы конструктор создаст шесть возможных комбинаций поисковых слов:

  • лампа гасова;
  • лямпа гясова;
  • светильник гасова;
  • лампа керосиновая;
  • лямпа керосиновая;
  • светильник керосиновая.

И вот по этим запросам будет произведен поиск, потом отфильтрованы дубликаты и показан результат. Такой конструктор позволяет задать ключевые слова как в правильном написании, так и с частыми ошибками, чтобы получить максимум результатов на выходе. Поиск можно сохранить и использовать в будущем для ручного или автоматического поиска. Но, по-моему, это слишком сложно!

Поиск по барахолкам на сайте

Монетизация

Монетизации пока нет. В планах — упростить проект, сделать из него поисковик по маркетам, и тогда будет уместно прикрутить контекстную рекламу.

Как будут оценивать проект

В рамках конкурса pet-проектов разработчики и инвесторы оценят проект Sherlock по таким критериям:

 1. Оригинальность идеи.

2. Качество кода.

3. Технический уровень.

4. Жизнеспособность идеи.

5. Перспективы проекта как бизнеса.

6. Инвестиционная привлекательность.

Победителей среди 20 кейсов определят на основе оценок инвесторов (45%), разработчиков (45%) и голосов читателей Highload (10%).

Более подробно, кто и как будет оценивать кейсы, можно прочитать здесь: статья об экспертах, критериях и правилах конкурса

Проект Sherlock оценивают:

Максим Федоров

Senior PHP Developer в Yellow Stone.

Оценивает проекты по backend PHP и веб-разработке. Свой путь в IT Максим начинал как разработчик программного обеспечения для ПК в 2008 году. Затем перешел в веб-разработку, так как считает эту отрасль интересной в техническом плане и дающей множество возможностей. Последние 6 лет работает над разными проектами в качестве backend-разработчика, имеет опыт управления командами до десяти человек.

Елена Мажуга

Старший инвестиционный аналитик Genesis Investments.

Роман Бабицкий

Основатель инвесткомпании Babitskyi Investment, глава совета по вопросам иностранных инвестиций и экономического развития Украины.

Дмитрий Томчук

Основатель инвестиционного фонда Fison.

Дмитрий Олареско

CEO Beetroot Academy, ex Drupal Architect.

16 лет в разработке. Из них более 10 лет посвятил веб-разработке на Drupal для таких клиентов как Johnson&Johnson, Louis Vuitton Moët Hennessy, Valeo. Активный участник и спикер международного Drupal-сообщества, организатор Drupal-мероприятий в Харькове. В 2020 году перешел в сферы IT-образования и социального предпринимательства.

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023