Статья опубликована в рамках: Научного журнала «Студенческий» № 27(239)
Рубрика журнала: Информационные технологии
Скачать книгу(-и): скачать журнал часть 1, скачать журнал часть 2, скачать журнал часть 3, скачать журнал часть 4, скачать журнал часть 5
ИСПОЛЬЗОВАНИЕ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ ДЛЯ РАЗРАБОТКИ САЙТА-АГРЕГАТОРА ПО ПОДБОРУ ОБЪЯВЛЕНИЙ О ПРОДАЖЕ ТОВАРОВ (НА ПРИМЕРЕ ПРОДАЖИ АВТОМОБИЛЕЙ)
THE USE OF INFORMATION TECHNOLOGIES FOR THE DEVELOPMENT OF THE SITE-AGGREGATOR FOR THE SELECTION OF ADS FOR THE SALE OF GOODS (BY THE EXAMPLE OF CAR SALES)
Andrew Ustinov
Student, Department of Information Systems, Institute of Information Technologies, Moscow State Technological University "Stankin",
Russia, Moscow
АННОТАЦИЯ
Представленное исследование посвящено актуальным вопросам использования информационных технологий для разработки информационных систем по подбору объявлений о продаже товаров (на примере продажи автомобилей).
ABSTRACT
The presented research is devoted to topical issues of using information technologies for the development of information systems for the selection of ads for the sale of goods (by the example of car sales).
Ключевые слова: информационные технологии; сайт-агрегатор; агрегирование данных; поисковая система.
Keywords: information technologies; site-aggregator; data aggregation; search engine.
До сих пор остается весьма актуальной проблема сбора, обработки и хранения данных в различных отраслях экономики, в том числе и при продаже автомобилей, с учетом того, что на рынке каждый год продается около 80 миллионов автомобилей, существует более 500 брендов и 50000 моделей авто, не беря во внимание разнообразие их технического оснащения и комплектаций [1]. Для решения подобной проблемы создаются различные ресурсы и приложения по агрегации объявлений по более простым и понятным для пользователя критериям. Подавляющее большинство таких решений – информационные сайты – совокупность связанных веб-страниц, содержащих определенный контент.
Создать сайт, особенно информационный, проще и в программном смысле, так как существует множество готовых сред и систем, в том числе бесплатных, для формирования веб-ресурса (например, «WordPress.org», «Joomla» и другие).
В то же время можно создать комплексный и функциональный интернет-сайт с большой степенью интерактивности, используя современный инструментарий разработки, например, язык разметки и стилей (HTML и CSS) и язык JavaScript c различными фреймворками и библиотеками (например, «Angular» или «React.js»). На такой «связке» программных средств разработки построены более 500 тысяч сайтов по различным областям, начиная от отраслей промышленности и заканчивая образованием.
В данной статье будет рассмотрены основные аспекты разработки сайта-агрегатора автомобильных объявлений, который поможет существенно облегчить пользователям поиск нужного им автомобиля для последующей покупки.
Агрегационные сервисы можно классифицировать по двум основным группам:
- сайты-агрегаторы – сервисы, которые самостоятельно ищут и предлагают товары или услуги большого количества поставщиков или сетевых магазинов, но при этом зачастую не выступающие посредником при продаже товаров [2]. В данном случае, сайт собирает информацию с разных сетевых-магазинов о различных товарах и предоставляет пользователю агрегированную информацию. Таким образом, пользователь, может сделать выбор определенного товара в определенном магазине.
- маркетплейсы – онлайн-магазины, где размещены товары и услуги различных коммерческих компаний и пользователей. Здесь, в отличие от сайтов-агрегаторов, существует договоренность между держателями платформы маркетплейса и сторонними компаниями и/или пользователями о том, что последние размещают товары и услуги на платформе, а маркетплейсы предоставляют трафик и продвигают товар различными методами [2]. Для маркетплейсов характерно наличие личных кабинетов для пользователей для комфортного взаимодействия с платформой. В итоге пользователь может не только выбрать товар, но и имеет возможность заказать его через сам маркетплейс.
У обеих групп сервисов можно выделить следующие функции:
- сбор информации с сайтов коммерческих сетевых магазинов – информации о магазине, производителе, технические и ценовые характеристики;
- каталогизация всех товаров или услуг по типам и видам, а также по тематике, сезонности, акциям и пр.;
- предоставление возможности сравнения товаров по техническим и ценовым характеристикам.
У всех информационных ресурсов есть целевая аудитория – те, пользователи и клиенты, на которых и нацелена работа этого сервиса. В контексте сайтов агрегаторов автомобильных объявлений она может быть разнообразной и зависит от конкретного сайта и его особенностей. Однако, можно выделить две основные группы пользователей, который обычно привлекают такие сайты:
- Покупатели автомобилей – те люди, которые заинтересованы в покупке автомобиля. Они ищут различные варианты автомобилей, сравнивают цены, характеристики и условия продажи.
- Продавцы автомобилей – это люди или компании, которые хотят продать свои автомобили. Они размещают объявления о продаже на сайте, предоставляют информацию о своих автомобилях и ожидают заинтересованных покупателей.
Сегодня функционирует довольно много интернет-ресурсов по продаже автотранспорта, которые имеют внутренние алгоритмы агрегации. В качестве примеров интернет-сайтов агрегаторов можно привести «Дром», «Robasta.ru», «Автокод» и др. Однако каждая из таких систем должна обладать определенный базовым и дополнительным функционалом, а также постоянно совершенствоваться.
Эффективная информационная система по предоставлению объявлений должна обладать следующим функционалом:
- собирать данные об объявлениях с нескольких платформ по продаже автомобилей;
- иметь возможность поиска объявлений по критериям и по категориям;
- иметь возможность сортировки объявлений для удобства поиска;
- иметь раздел для сравнения объявлений в качестве дополнительного функционала;
- иметь удобный и функциональный дизайн.
Важным этапом сбора информации по объявлениям является извлечение информации из выявленных источников. В контексте данной работы в качестве основного метода извлечения информации будет использоваться парсинг [3]. Сначала входные данные внутри парсера проходят процесс от считывания отдельных символов до определения смысла выражений, состоящих из этих символов. В данном случае задача работы парсера сводилась к анализу HTML-страницы сайтов и последующего вычленения необходимого контента из верстки ресурса.
Следующим этапом являлся процесс агрегирования данных, который предполагал обработку первоначальных данных с их последующим сжатием при сохранении качества данных, то есть преобразование высокоточных данных в их более обобщенное представление. В технике обработки агрегаторы можно использовать различные алгоритмы из области искусственного интеллекта или техники машинного обучения, а также можно включать статистические методы обработки, такой как прогнозный анализ. После этапа обработки данные были представлены в обобщенном формате, который может обеспечить желаемый статистический результат с подробными и точными данными.
На основании проделанного анализа существующих программных продуктов и предварительных требований, для создаваемой информационной системы были установлены следующие требования:
- Предоставлять возможность пользователям осуществлять поиск объявлений с помощью поисковой формы, категорий и сортировки.
- Поисковая форма должна содержать основные критерии для отбора объявлений, такие как: марка; модель; диапазон года производства; диапазон цены; диапазон пробега; тип коробки передач; тип топлива; тип привода.
- Должны быть представлены не менее десяти видов категорий различной тематики, например, по ценовому диапазону, по варианту кузова, по «комбинациям» характеристик автомобилей.
- Сортировка должна осуществляться по трем главным критериям: год; цена; пробег.
- Предоставлять возможность пользователям сравнивать объявления. Среди функционала сравнения должно быть: добавление в сравнение; удаление из сравнения.
- Предоставлять пользователям ссылку на оригинальное объявление для возможности перехода.
- Предоставлять пользователям актуальную информацию по объявлениям.
- Создаваемый информационный веб-ресурс должен иметь приятный и интуитивно понятный интерфейс.
Далее необходимо функциональное моделирование, т.е. структурированное представление функций (процессов) в моделируемой системе. Функциональная модель, представляет собой графическое представление функции системы в определенной области. В проведенной работе была использована методология функционального моделирования – IDEF0, которая предназначена для формализации и описания бизнес-процессов, а также предписывает построение иерархической системы диаграмм – единичных описаний фрагментов системы [4].
Внешним входным информационным потоком для модели являются «Критерии пользователя». Внешним выходным информационным потоком - «Информация по объявлениям». Внешними управляющими потоками для модели являются: «Метод обработки входных данных», «Метод парсинга информации», «Метод обработки выходных данных». Основными механизмами для модели являются: «Веб-сайт», «Скрипт», «Пользователь».
После построения контекстной диаграммы, потребовалось ее декомпозировать в отдельные подсистемы (функциональные блоки). Диаграмма состоит из пяти функциональных блоков: получение данных с формы, формирование частей URL-ссылок в скрипте, формирование конечных URL-ссылок в скрипте, получение данных из HTML-кода, вывод пользователю данных по объявлениям. Диаграмма декомпозиции системы агрегации представлена на рисунке 1.
Рисунок 1. Диаграмма декомпозиции системы агрегации
Для моделирования системы в объектно-ориентированном подходе можно использовать различные диаграммы, такие как диаграммы вариантов использования, диаграммы классов, диаграммы последовательности, диаграммы состояний и др. Эти диаграммы помогают визуализировать структуру и поведение объектов, их взаимодействие и иерархию классов [5]. Диаграмма вариантов использования разработанной информационной системы представлена на рисунке 2.
Рисунок 2. Диаграмма вариантов использования информационной системы
Технические решения разработки информационной системы по агрегации информации были реализованы с использованием следующего инструментария:
- фреймворк для веб-приложений на языке Python – «Django»;
- стандартизированный язык гипертекстовой разметки документов для просмотра веб-страниц в браузере – HTML;
- формальный язык описания внешнего вида HTML-документа – CSS;
- набор функций JavaScript, фокусирующийся на взаимодействии JavaScript и HTML – «jQuery».
Реализация информационной системы в виде сайта-агрегатора по подбору объявлений о продаже автомобилей получила следующий функционал. На начальной странице сайта – раздел «Главная», который представлен на рисунке 3, расположена форма с фильтрами для поиска объявлений. На данной странице пользователь может выбрать нужные ему фильтры, такие как марка, модель, диапазон цены, диапазон пробега, диапазон года выпуска, тип коробки передач, тип топлива и тип привода.
Рисунок 3. Главная страница сайта-агрегатора
После выбора фильтров пользователь должен нажать кнопку найти объявления и сайт-агрегатор соберет информацию по объявлениям с сайтов-площадок. После чего пользователь получит актуальную информацию по интересующим его объявлениям. Для удобного поиска пользователь может сортировать объявления по определенным критериям. Вид полученных объявлений представлен на рисунке 4.
Рисунок 4. Отображаемая информация по объявлениям
Форма отображения (карточка) одного объявления содержит информацию об автомобиле, которая чаще всего является ключевой для пользователя. Также в объявлении сохранена ссылка на исходный сайт-платформу, с которого бралась информация об объявлении. Пользователь может воспользоваться ею для перехода на платформу.
Список объявлений может быть довольно большим, поэтому просмотр объявлений в формате огромного списка будет не очень удобным. Пользователь может использовать пагинацию страниц (элементы переходы на предыдущую/следующую и начальную/последнюю страницы), которая также отображает на какой странице находится пользователь и сколько их всего.
Если пользователя заинтересовали определенные объявления, он может добавить их в раздел «Сравнение», где он может сравнить ценовые и технические характеристики выбранных автомобилей. После добавления определенных объявлений пользователь получит уведомление об этом действии. Если пользователь попытается добавить уже добавленное объявление, то он получит уведомление, что такое объявление уже добавлено. После добавления объявлений в раздел «Сравнение», пользователь может перейти в него и сравнивать заинтересовавшие его автомобили. Если пользователь сочтет ненужным определенное объявление, он может его убрать, нажав кнопку «Удалить». Вид раздела «Сравнение» представлен на рисунке 5.
Рисунок 5. Раздел «Сравнение»
В разделе «Категории» пользователь может найти необходимые ему автомобили через интересующие его категории. Данная форма работает аналогично первой, за исключением того, что фильтры не нужно настраивать самостоятельно. Пользователь можно просто кликнуть по интересующей его категории и получить информацию об объявлениях. При наведении на категорию пользователю высвечивается краткая информация о выбранной категории. Категории авто позволяют быстро и удобно искать нужные автомобили. Они сформированы на основании популярных метрик (совокупность цены, пробега, года выпуска, типа кузова и так далее). Например, выбрав категорию «Культовые» пользователь получит автомобили, которые были выпущены более 20 лет назад и при этом стоят весьма дорого, что и обусловливает их статус. Вид раздела «Категории» представлен на рисунке 6.
Рисунок 6. Раздел «Категории»
В разделе «О сайте» расположена техническая информация о целях, разработчиках проекта, инструментарии и другой справочной информации.
В ходе проведенной работы были проанализированы функции платформ и сайтов агрегаторов автомобильной тематики. Были рассмотрены существующие программные продукты по агрегации автомобильных объявлений. На основе обзора данных решений были выделены общие и индивидуальные функциональные возможности этих систем, а также выделены предварительные функции, которые должны быть в разрабатываемом программном продукте.
При исследовании методов сбора и агрегации в качестве основного был выбран парсинг по основным характеристикам автомобиля (имя, год, пробег, цена, и другие технические характеристики).
Учитывая обзор программных решений, выбранный метод сбора и агрегации информации, были сформированы формальные требования, а также разработаны функциональные и объектные модели к разрабатываемой системе по агрегации информации.
На основе полученных требований была разработана система по агрегации информации в формате веб-сайта. В процессе разработки были решены различные технические задачи, связанные с формированием дизайна, построением логики работы сайта, созданием разделов, системы хранения для части критериев в форме, реализацией поиска и фильтрации объявлений.
В дальнейшем требуется поддержка и обновление сайта, а также улучшение функциональности и удобства использования. Существует необходимость в дальнейшей оптимизации как производительности, так и визуальной составляющей разработанной системы.
Список литературы:
- Статистика продаж автомобилей в Мире в 2022 году [Электронный ресурс] // Green Way: [сайт]. – URL: http://greenway.icnet.ru/cars-sales-previous-world.html (дата обращения 14.10.2022).
- Что такое агрегатор услуг и товаров? [Электронный ресурс] // timeweb.com: [сайт]. – URL: https://timeweb.com/ru/community/articles/chto-takoe-agregator (дата обращения 15.10.2022).
- Parsing [Электронный ресурс] // Wikipedia: [сайт]. – URL: https://en.wikipedia.org/wiki/Parsing# (дата обращения 10.01.2023).
- IDEF0 [Электронный ресурс] // Wikipedia: [сайт]. – URL: https://ru.wikipedia.org/wiki/IDEF0 (дата обращения 06.02.2023).
- Объектное моделирование [Электронный ресурс] // StudFiles: [сайт]. – URL: https://studfile.net/preview/3651639/page:3/ (дата обращения 11.02.2023).
Оставить комментарий