Мониторинг цен конкурентов в торговых точках и интернете
В современных, зачастую жестких и непримиримых, «на грани фола» условиях ведения бизнеса, никакая серьезная конкурентная борьба невозможна без отслеживания и анализа тех или иных аспектов деятельности конкурентов. И в первую очередь это касается всестороннего мониторинга ценовой политики других игроков рынка с целью недопущения получения ими каких-либо серьезных преимуществ и последующего оттока потенциальных покупателей по причине более выгодных цен. Конечно, помимо более низких и выгодных с точки зрения покупателей цен, дополнительными факторами конкурентной борьбы являются развитые системы лояльности, включая различные скидки, акции, бонусы и распродажи. Также свой вклад вносят и удачные рекламные мероприятия, особенно те, которые в открытой или завуалированной форме «обстебывают» и выпячивают любые недостатки конкурентов. Однако вне всяких сомнений – именно наиболее выгодная цена является тем ключевым мотиватором, фундаментом и своеобразным «краеугольным камнем», на котором чаще всего и базируется финальное желание покупать у вас или у вашего конкурента.
Зачем нужен мониторинг цен конкурентов?
Отслеживание и контроль розничных цен «оффлайн»
Автоматическое распознавание ценников
Парсинг сайтов интернет-магазинов и прайс-площадок
Способы защиты от парсинга и методы их обхода
Юридические аспекты и сложности мониторинга цен
Зачем нужен мониторинг цен конкурентов?
Регулярно проводимый мониторинг и анализ цен конкурентов предназначен для удержания под неусыпным контролем ценовой политики других участников рынка. Цель данного мероприятия - это получение информации для своевременной реакции на действия тех, кто путем демпинга и прочих ценовых ухищрений пытается вытеснить других игроков, существенно нарастить свое присутствие в занимаемой нише и увеличить объем продаж. Сбор данных о ценовой политике конкурентов позволяет не только всесторонне изучать стратегию ценообразования наиболее успешных и «топовых» компаний на рынке, но и по косвенным признакам своевременно выявлять игру на понижение цен, а также наличие «специальных прайсов» и «особых условий» на те или иные позиции, а также целые группы товаров.
К примеру, у двух конкурирующих между собой и примерно равных по объемам продаж компаний имеется единый поставщик, который отгружает свой товар и тем и другим. При проведении мониторинга цен, инициированным одной из компаний (назовем ее – «А»), выясняется, что розничная (отпускная) цена у конкурирующей компании (назовем ее – «Б») на определенный товар равна той цене, по которой поставщик отгружает свой товар компании «А». Т.к. наценка на товар вряд ли может быть нулевой или отрицательной, и мы не рассматриваем примеры компаний, которые в погоне за объемами продаж и своей капитализацией «покупают за рубль, а продают за 90 копеек», это может означать что у конкурирующей компании «Б» имеются какие-то особые привилегии и условия на данный товар. Цена поставки данного товара для компании «Б» ниже, чем для компании «А». Все это позволяет компании «Б» устанавливать такую наценку, которая уравнивает розничную цену с ценой закупа для компании «А».
Конечно, если учитывать, что данные по цене были получены некорректные, например, сработала хитрая защита от «парсинга» интернет-магазина, или цена в каталоге на сайте одна, а при оформлении заказа из корзины уже совсем другая и т.д. Либо, если речь идет о сборе цены в торговой точке, выяснилось, что на самом деле сотрудники магазина попросту забыли или не успели обновить ценник. Однако если отбросить эти факторы, отмести в сторону идею целенаправленного демпинга и признать достоверность собранных данных, то получается, что у компании «А» есть весомый повод призадуматься по поводу своей ценовой политики и собственных поставщиках.
Стоит также отметить, что анализ и сравнение цен конкурентов становится особенно актуальным для многих региональных ритейлеров, которые зачастую не в силах сопротивляться продолжающейся экспансии со стороны крупных федеральных сетей без применения современных информационных технологий и сервисов. В последнее время идет массовое поглощение даже крупных и финансово устойчивых региональных игроков, которые проигрывают «федералам» прежде всего по части ценовой политики, которая вовремя не отслеживается и не корректируется с учетом изменений цен других участников рынка.
Многие специализированные СМИ пестрят сообщениями о внезапно прошедших или планирующихся поглощениях. Поглощаются даже достаточно крупные сети, закрываются старейшие магазины, которые были открыты десятки лет назад, и только потому, что неподалеку появляется магазин, супермаркет или гипермаркет федеральной сети. По нашему опыту и по опыту наших клиентов из числа региональных сетей, одним из действенных способов стойко «держать оборону» в ценовых войнах, успешно сопротивляться демпингу и параллельно контролировать качество работы своей компании - это активно использовать сервисы мониторинга цен конкурентов, систематически выполнять аудиты магазинов и удаленных филиалов компании по электронным чек-листам, а также «держать руку на пульсе», отслеживая лояльность покупателей по методу NPS.
В том время как розничные сети борются в «оффлайне» со своими локальными конкурентами и с экспансией федеральных сетей, у интернет-магазинов проблема мониторинга и сравнения цен намного более насущная и актуальная. Почему? Потому что в случае продуктовой розницы, покупатель вряд ли поедет в другой магазин из-за более высоких цен на отдельные товарные позиции в своей корзине, особенно если торговая точка расположена в относительном удалении. На такие «подвиги» обычно способны люди, у которых серьезно ограничен бюджет и/или есть масса свободного времени. Работающий человек, особенно живущий в мегаполисах с их постоянными пробками и толпами людей, в условиях нехватки времени, и что греха таить, природной лени, вряд ли пойдет или поедет куда-то еще из-за пачки творога или упаковки спагетти, которая дешевле на 5-10 рублей.
Но это все касается крупных городов, а в городах с меньшим населением, где помимо локальных игроков на рынок активно «вклиниваются» федеральные сети, т.е. там, где на единицу площади наблюдается высокая плотность распределения магазинов конкурентов – без системы мониторинга цен никак не обойтись. Что же касается интернет покупок, то покупатель, который ищет и заказывает что-то в интернет-магазине, будь то новая «плазма», одежда или напольное покрытие, легко может открыть хоть десять вкладок в своем браузере и сидя в комфортной обстановке, не торопясь, сравнивать между собой цены в разных интернет-магазинах. Ну и конечно же, многие первым делом начинают поиск практически любых товаров на сайтах-агрегаторах цен, таких как Яндекс Маркет, где помимо возможности прицениться, они могут получить дополнительную информацию по техническим характеристикам, посмотреть фотографии, почитать отзывы других покупателей и т.д.
Грамотное ценообразование с постоянной оглядкой на ценовую политику конкурентов – это основа и фундамент хороших продаж, где оптимально уравновешено желание продавца продать, а покупателя купить товар по выгодной для обеих сторон цене. Иными словами, розничная цена на товар должна быть таким образом сбалансирована, чтобы продавец мог получить максимально возможную прибыль, а покупатель при этом не выбрал предложение конкурента. На продажах, особенно проводимых «онлайн» способом, не в последнюю очередь сказывается фактор установленной цены, а также то, какую цену на товар устанавливают конкуренты.
Часто бывает, что даже небольшая разница в цене, при прочих равных условиях (доставка, бонусы лояльности, отзывы на Яндекс Маркете и т.д.), может привести к тому, что товар приобретут у конкурентов. Поэтому контроль розничных цен, проводимый на регулярной основе как в «оффлайне» (торговых точках), так и в «онлайне» (интернет-магазине), направлен в первую очередь на то, чтобы:
- Установить сбалансированную и оптимальную (наиболее выгодную для себя) розничную цену на товары;
- Спланировать и скоординировать общую ценовую политику компании;
- Определить момент наступления необходимых условий, при которых возможно предоставление бонусов и скидок;
- Оказывать своевременное «ценовое давление» и «прессинг» на конкурентов;
- Отсеивать и фильтровать поставщиков, работая только с теми, кто предоставляет наиболее выгодные условия;
Кто же является основными потребителями услуг в рамках всестороннего исследования цен конкурентов? Это в первую очередь сотрудники коммерческого отдела компании, категорийные менеджеры, бренд-менеджеры, а также сотрудники отдела закупа и поставщики. У каждой из перечисленных категорий есть свои цели и задачи, неразрывно связанные с оперативным получением и обработкой больших массивов информации по товарам и ценам. В современных условиях ведения конкурентной борьбы, тот, кто в информационном плане лучше других «вооружен» различными сервисами и инструментами – тот и получает максимальное конкурентное преимущество, выигрывая войну за кошелек покупателей.
Отслеживание и контроль розничных цен «оффлайн»
С учетом сложившихся трендов на смещение фокуса торговли в «онлайн» и массового запуска интернет-магазинов даже старейшими компаниями, давно и прочно обосновавшимися на «оффлайн» рынках, на сегодняшний день существует несколько распространенных способов изучения цен конкурентов: непосредственный сбор данных в торговых точках и «парсинг» сайтов. В последние годы на рынке появилось определенное количество специальных веб-сервисов, которые предлагают автоматический сбор цен с сайтов интернет-магазинов, а также с сайтов специализированных товарных агрегаторов, прайс-площадок и маркетплейсов.
Однако среди них нет тех, кто бы предлагал комплексный подход, предоставляя возможность в одном сервисе не только «парсить» сайты, но и удобным способом собирать данные «в полях», т.е. в торговых точках. Ведь ни для кого не секрет, что цены в интернет-магазине и торговых точках могут существенно различаться, а некоторые позиции, продающиеся в магазинах, могут по тем или иным причинам отсутствовать в каталогах на сайте. Кроме того, в некоторых сферах бизнеса, к примеру, в продуктовом ритейле, многие компании не считают нужным или экономически обоснованным запускать интернет-магазины, поэтому единственным способом хоть как-то выполнить контроль розничных цен конкурентов - это получить в свое распоряжение прайс-лист или пойти в магазин и собрать данные любым доступным способом.
Некоторые компании, за неимением лучшего, до сих пор используют такие «архаичные» инструменты как блокнот или тетрадь, куда вписывают цены, перебивая потом все это вручную в Excel для получения сводных таблиц. Другие пытаются наговаривать цены в диктофон, либо использовать какие-либо вспомогательные сервисы или программы, которые позволяют хоть как-то фиксировать данные не на бумаге. Третьи для сбора информации успешно используют специальные облачные сервисы, экономящие значительное количество денег, времени и сил. Данные сервисы позволяют легко фиксировать цены конкурентов с помощью мобильных устройств, отслеживая геолокацию посещений и автоматически синхронизируя собранные данные «в облако». Удобство использования собственных мобильных устройств позволяет сотрудникам выполнять в два, а то и в три раза больше «обходов» торговых точек конкурентов, при этом также полностью отпадает необходимость ручного переноса данных в удобную для анализа форму.
Вся собранная информация становится доступной руководству и сотрудникам коммерческого отдела компании в личном кабинете на сайте сервиса, где можно формировать сводные отчеты, выгружать данные в Excel в «сыром виде» и получать прочие метрики, связанные с анализом ценовой политики конкурентов. Учет цен с помощью мобильных устройств, находящихся «на руках» собственных сотрудников и внештатных исполнителей в рамках специального облачного сервиса, позволяет унифицировать метод сбора данных и исключить разнородные источники информации, которые придется потом стыковать и интегрировать в единое целое. Такой подход весьма выгоден компании по ряду причин, указанных выше, касающихся существенной экономии людских и временных ресурсов.
Как устроены подобные сервисы? В мобильном приложении, помимо фиксации цены товара, специалист, который выполняет мониторинг, может дополнительно приложить фотографии ценника и добавить любое количество сопутствующих комментариев. Отсутствующий товар может помечаться опцией «нет данных», а позиции, которые являются необязательными для мониторинга – могут пропускаться. Помимо имеющегося поиска товаров по наименованию и артикулу, встроенная функция сканирования штрихкода на ценнике позволяет быстро отфильтровать объемный список SKU по соответствующему товару и выполнить автоматическое позиционирование на найденной позиции.
Акционный товар может дополнительно помечаться опцией «акция», а те позиции конкурента, цена на которые отличаются от розничной цены компании на определенный процент, могут иметь дополнительную опцию обязательности прикладывания сопутствующей фотографии и/или комментария. Стоит отметить, что процент отклонения цены для каждой позиции сугубо индивидуален и зафиксирован в общем списке товаров для мониторинга. Сбор данных в торговых точках конкурентов может выполняться полностью в автономном режиме, при этом собранная информация будет автоматически синхронизирована в «облако» в тот момент, когда появится доступное интернет соединение.
Мониторинги могут быть заранее запланированы на сайте сервиса. Планы обычно создаются либо по выбранным торговым точкам, либо по регионам или брендам конкурентов. Планированием и распределением планов по исполнителям обычно занимается специально выделенный сотрудник-координатор из коммерческого отдела или специального отдела мониторинга. Запланировать мониторинги можно также по собственным магазинам, при этом планы будут созданы только по тем торговым точкам конкурентов, которые по своим географическим координатам попали в «радиус конкуренции» выбранных собственных магазинов.
Радиус конкуренции настраивается в сервисе каждой компанией индивидуально на глобальном уровне, и может составлять от 200 метров до нескольких километров в зависимости от масштаба розничной сети и ее «плотности» распределения по территории. Созданные планы могут быть назначены также на конкретного исполнителя. Мониторинги также могут «спонтанно» создаваться прямо в мобильном приложении без предварительного создания плана на сайте сервиса.
Исполнителями, или т.н. «монитористами», могут выступать как штатные сотрудники компании из специально созданного отдела мониторинга или коммерческого отдела, так и сотрудники собственных магазинов, которые будут самостоятельно отслеживать цены в близлежащих магазинах конкурентов. Если компания достаточно крупная и ассортимент, который отслеживается, состоит из многих позиций, то за «свою» группу товаров могут отвечать сотрудники, курирующие определенные товарные направления (категорийные менеджеры). Если компания небольшая, то мониторингом могут заниматься буквально все подряд, включая руководителя.
В качестве исполнителей также могут привлекаться «люди со стороны», это могут быть как сотрудники специализированных агентств, так и те, кто в рамках «краудсорсинга» подрабатывает путем выполнения задач, связанных со сбором цен в торговых точках или оценки качества работы магазинов по электронным чек-листам. По всем этапам мониторингов соответствующим сотрудникам может настраиваться получение информационных push и email-уведомлений, в том числе по вновь созданным и просроченным по дате выполнения мониторингам. Стоит отметить, что для работы в сервисе обычно не требуется закупать специфические мобильные «девайсы», достаточно тех, которые уже находятся «на руках» людей в личном пользовании. Поддерживается самый широкий спектр устройств на платформах Android и iOS. Схематично организацию процесса мониторинга цен конкурентов можно представить в следующем виде:
В мобильном приложении список товаров на мониторинг представляет собой некую форму электронного чек-листа, где списки (чек-листы) сгруппированы по товарным категориям. Например, в случае продуктового ритейлера, все товарные позиции, которые относятся к крупам и пряностям, попадают в категорию «Бакалея», а творог, ряженка, простокваша, сыр, брынза, йогурт и сметана – в категорию «Молочные продукты». Товары также могут быть разбиты на отдельные списки, например – «Маяки», «Мясо и рыба», «ФРОВ», «Собственное производство» и «СТМ». У DIY-ритейлера списки могут называться к примеру «Водоснабжение», «Декорация», «Дерево», «Напольные покрытия», «Сантехника», «Строительство» и т.д. Списки товаров могут корректироваться вручную в соответствующих справочниках на сайте сервиса, либо (что намного чаще) автоматически загружаться в сервис на периодической основе.
В розничной торговле особое внимание уделяется товарам группы KVI, по которым покупатели определяют ценовой уровень предложения всей торговой точки. В группу KVI попадают бренды или определенные товары, специально выделенные, постоянно присутствующие на полках, хорошо известные покупателям и пользующиеся регулярным спросом. Данная группа очень важна и в зависимости от сферы бизнеса обычно составляет от трех до пяти процентов от всего товарного ассортимента. В сервисе, именно KVI товары обычно отслеживаются чаще всего, т.к. мониторинг данного списка дает относительно четкое представление, где компания выигрывает по части ценовой политики, а где проигрывает.
В рамках интеграции с учетной системой компании, будь то 1С, SAP, GESTORI и т.д. настраивается двунаправленный обмен данными, основанный на использовании API (интерфейса получения и передачи данных) или путем обмена файлами по защищенному протоколу SFTP. Через интеграцию с учетной системой в сервис передаются не только систематически обновляемые списки товаров на мониторинг, но и фотографии образцов товарных позиций.
По нашему опыту, наработанному при тесном сотрудничестве с рядом крупных сетей, у которых имеется обширная товарная номенклатура, образцы фотографий товаров существенно облегчают поиск и сопоставление позиций даже у опытных «монитористов», что уж говорить о «внештатных» сотрудниках и других людях, которые периодически привлекаются для выполнения подобного вида сбора данных «в полях». Обратно в учетную систему также могут передаваться «сырые данные» (цены, фотографии, комментарии), если имеющихся отчетов на сайте сервиса будет недостаточно. Сырые данные обычно загружаются в аналитическую систему на стороне компании (Qlikview, Power BI и т.д.) и на их основе строятся дополнительные, «углубленные» отчеты с детализацией в различных разрезах.
Стоит особо заострить внимание на возможность работы полностью в автономном режиме, когда исполнитель мониторинга фиксирует цены на своем мобильном устройстве при плохом или полностью отсутствующем интернет соединении. Проблемы с интернет связью могут возникать спонтанно по самым разным причинам. Например, торговая точка конкурента находится в помещении на цокольном этаже или где-нибудь в «глубинке», удаленной от ближайших крупных населенных пунктов. Любой другой причиной может быть какая-то возникшая неисправность самого мобильного устройства, напрямую влияющая на стабильность работы и доступность интернета.
Отсутствие интернет соединения не должно помешать выполнению задания, особенно если исполнитель потратил много времени, чтобы добраться до нужной торговой точки. Поэтому, для беспроблемного сбора цен, в грамотно спроектированный сервис закладывается возможность «отложенной» синхронизации данных в «облако». При отсутствии стабильного и доступного интернет соединения, «мониторист» в штатном режиме выполняет назначенный мониторинг по списку товаров на своем мобильном устройстве. После этого, как только он попадает в зону покрытия где есть стабильный интернет или скоростной WiFi, все собранные данные синхронизируются на сервер, «в облако». Полученная информация практически сразу становится доступной во всех оперативных и аналитических отчетах.
Функция геолокации мобильного устройства служит для подтверждения визитов исполнителей мониторингов в торговые точки конкурентов. По опыту наших клиентов, далеко не все сотрудники, особенно внештатные, «разовые», добросовестно относятся к возложенным задачам даже получая за это неплохое вознаграждение. Попытка обмануть обычно заключается в том, чтобы на самом деле не посещать магазин по заданию, а просто ввести цены на товары случайным образом, находясь при этом дома или в другом месте. С помощью функции геолокации подобные ухищрения легко выявляются и пресекаются, потому что в отчетах четко видно, был ли посещен объект мониторинга или нет.
Еще одним способом защиты от подобного рода недобросовестных манипуляций служит опция обязательности ввода фотографии ценника и комментария по каждому товару в списке. В сервисе каждый этап выполнения мониторинга, будь то взятие в работу и закрытие, а также любая сделанная фотография и комментарий, сопровождаются фиксацией даты и времени, что дает дополнительное подтверждение, когда и в какое время исполнитель был «на объекте», и был ли он там на самом деле.
Насколько часто следует проводить «оффлайновый» мониторинг? Обычно это зависит от размера сети, активности и количества конкурентов. Бытует мнение, что чем меньше розничная сеть или магазин, тем чаще следует проводить анализ цен конкурентов. Почему так происходит? Чем больше сеть, тем больше у нее товарооборот и тем выгодней условия, по которым данная сеть работает со своими поставщиками. Поэтому крупные ритейлеры могут позволить себе продавать товар по более сбалансированным ценам и часто давать покупателю предложение ниже, чем дают конкуренты меньшего масштаба.
Таким образом, поставленный на поток процесс изучения цен конкурентов в первую очередь актуален для магазинов и сетей меньшего размера, которые вынуждены противостоять тем, кто крупнее. Как правило, отслеживается только небольшая часть ассортимента, в основном товары, относящиеся к группе KVI. Также проводится ABC-анализ и в отслеживаемые позиции попадает только часть товаров группы «А», дающих наибольшую выручку. Практически никто и никогда не «мониторит» в «оффлайне» весь ассортимент конкурента, особенно если он насчитывает десятки тысяч позиций. На это просто ни у кого не хватит ни времени, ни сил.
Сбор данных «в полях» с помощью мобильных устройств может быть дополнен «парсингом» интернет-магазинов конкурентов, и все это выполнено в рамках единого сервиса и информационного пространства. Фактически данные будут стекаться в систему сразу из двух источников: из «оффлайна» и «онлайна», взаимно дополняя друг друга. Различие в ценах, собранных из разных источников на один и тот же товар, позволит лучше изучить и понять, как, каким образом и насколько отличаются цены конкурентов в торговых точках и в интернете.
По аналогии с планированием «оффлайн» мониторингов на сайте сервиса, «парсинг» интернет-магазинов также может быть распланирован на выполнение в определенное время с заданной периодичностью. Данный функционал позволяет компании сэкономить, получив решение «два в одном», чего не могут дать сервисы, которые «заточены» исключительно под сбор данных «онлайн», т.е. только под парсинг сайтов. Однако если компания уже использует «онлайновый» сервис для сбора и анализа цен конкурентов, то можно организовать интеграцию и данные, собранные «оффлайн», передавать в уже используемый сервис с помощью API и через другие каналы обмена.
Автоматическое распознавание ценников
К наиболее перспективным направлениям в рамках изучения цен конкурентов являются системы автоматического распознавания ценников, основанные на широком использовании алгоритмов искусственного интеллекта и машинного обучения. Наибольший «прорыв» в распознавании, классификации и детализации данных на изображениях в последнее время совершен в области так называемых сверточно-рекуррентных нейронных сетей. Системы распознавания ценников устроены следующим образом: на вход подается фотография ценника товара, выполненная исполнителем в мобильном приложении, на выходе после обработки изображения предоставляется информация о наименовании товара, его цене, штрихкоде, признаке наличия акции и других параметрах (вес, производитель и т.д.)
Процесс распознавания обычно состоит из нескольких этапов. На первом этапе выполняется «обрезка» и выделение «тела» ценника из общей фотографии, куда помимо самого ценника обычно попадает часть полки, самого товара или даже соседних позиций. На втором этапе производится выделение ключевых фрагментов, таких как наименование товара и его цена. На финальном этапе производится непосредственное распознавание текста и на выходе получаются искомые данные. Зачастую, за каждый этап распознавания отвечает отдельная сверточная нейронная сеть.
К еще одному перспективному направлению относятся системы распознавания полки целиком, когда исполнителем фотографируется вся полка или ее значительная часть. Несмотря на ряд успехов в этом направлении по направлению автоматизации задач мерчендайзинга (выявление «дыр» в выкладке и отсутствующих ценников, акционный товар, соответствие планограммам и т.д.), до промышленной эксплуатации подобных систем в задачах распознавании цен пока еще довольно далеко.
У автоматического распознавания ценников с помощью технологий машинного обучения есть определенные недостатки, и самые главные из них – необходимость первичного обучения, систематического переобучения, а также скорость сбора и обработки данных. Для того, чтобы максимально качественно распознать ценник, исполнителю мониторинга выдвигаются определенные требования по фотофиксации. Во-первых, необходимо тщательно «прицелиться» в ценник под определенным углом, иначе распознавание может получиться некорректным. В качество распознавания информации также может легко вмешаться плохое освещение или слабая фотокамера в мобильном устройстве. В момент фотографирования, в «рамку» не должно попадать других ценников или товаров, кроме того, рамки самого ценника должны целиком попасть на фотографию.
Помимо всего этого, системе распознавания нужно уметь распознавать копейки, и данные, написанные от руки или в сокращенном виде. К дополнительным сложностям относится и распознавание сразу двух или даже трех цен, одна из которых это цена по акции или цена для владельца бонусной карты. Нельзя сказать, что все это непреодолимые трудности, т.к. технологии постоянно совершенствуются и задачи постепенно решаются, однако до сих пор никто не дает стопроцентной гарантии распознавания и многие из перечисленных факторов накладывают определенные ограничения на широкое использование систем автоматического распознавания ценников.
Вышеперечисленные недостатки создают определенные сложности непосредственному исполнителю мониторинга - человеку, ведь в итоге фотографию ценника пока что делает именно человек, а не машина, хотя эксперименты в области использования роботов ведутся. Именно человек, несмотря на свои ограниченные физические ресурсы и возможности, на сегодняшний день является самым скоростным и идеальным стопроцентным классификатором изображений, а вовсе не «супернавороченная» нейронная сеть. Дополнительные требования, предъявляемые к качественному фотографированию ценников, да еще под определенным углом и дистанцией, с попаданием в «рамки», могут существенно замедлить сбор данных.
К примеру простой ручной набор цены в мобильном приложении может делаться за 3-5 секунд, тогда как на фотографирование может уйти все 10-20 и более секунд, а неудачное фото и вовсе, придется делать заново. Если учесть, что в списке товаров на мониторинг могут быть сотни позиций, сделать такое большое количество фотографий с определенными требованиями к съемке может быть физически тяжело и весьма затратно по времени. Кроме того, человек, который тщательно «прицеливается» своим смартфоном в каждый ценник привлекает намного больше внимания, нежели тот, что «набивает» цены вручную, а излишнее внимание со стороны персонала торгового зала может помешать качественному сбору данных. Также возникает проблема фотографирования ценников товаров, расположенных на нижних и верхних полках. И если стоя на своих ногах, человек может лишь слегка наклониться (поднять голову) или отойти подальше, чтобы увидеть цену, то для того, чтобы правильно сфотографировать ценник для последующего распознавания, придется как следует изогнуться, чтобы «поймать» определенный угол обзора в соответствии с предъявляемыми требованиями.
К другим, пока еще непреодолимым недостаткам нейронных сетей и других алгоритмов машинного обучения, стоит также отнести обязательность предварительного обучения на большой выборке данных, служащих в качестве образцов. Нейронным сетям нужно предварительно «скормить» большое количество образцов, чтобы система могла обучиться и распознавать ценники с высокой степень достоверности. Т.к. внешний вид ценников у разных розничных сетей и брендов различается, то обычно нейронные сети предварительно «натаскивают» под определенные форматы. А вот при изменении формата, нейронную сеть придется переобучать заново. По краям и на самих ценниках могут попадаться различные артефакты в виде смазанности, наложения, нечеткости и пересечения полосками.
Часть ценников даже в пределах одного магазина или сети может иметь разные шрифты. Бывает, что формат ценников меняется, но не синхронно во всех магазинах, а поэтапно, в итоге в одних торговых точках до сих пор выставлены старые ценники, а в других уже новые. Если съемка производится со вспышкой, на фотографии ценника могут возникнуть блики, которые будут перекрывать текст и мешать процессу распознавания. Трудности могут возникнуть и в том случае, если ценники расположены вплотную друг другу без малейшего зазора между ними, таким образом в одном ряду «сплошняком» могут находиться десятки и более позиций. Сфотографировать даже один из них так, чтобы в кадр не попали рядом стоящие, может оказаться достаточно нетривиальной задачей. Ну и самое главное, если фотография ценника для распознавания делается без привязки к «своему» списку товаров, когда исполнитель мониторинга просто фотографирует все подряд что видит, то в этом случае появляется дополнительная задача «матчинга», т.е. стыковки и сопоставления распознанных товаров с собственной номенклатурой. А решить эту задачу также крайне непросто, учитывая, что на ценниках часто пишут только название товара и его цену.
Парсинг сайтов интернет-магазинов и прайс-площадок
Парсинг (граббинг) цен интернет-магазинов – это автоматической сбор данных в интернете с целью получения нужной информации для принятия решений касательно формирования собственной ценовой политики. Сбор данных с сайтов интернет-магазинов обычно осуществляется специальными «грабберами» или «сетевыми пауками». Сетевой паук - это специальная программа-бот, которая маскируется под реальных пользователей и осуществляет массовый сбор данных сразу в нескольких десятках, сотнях и даже тысячах параллельных потоков. Если обычный человек за раз может открыть в браузере и просмотреть только одну страницу прайс-листа или карточку товара, то грамотно разработанный сетевой паук, прикрываясь «прокси» и другими средствами сетевой маскировки, за один заход может «спарсить» сразу сотни, а то и тысячи страниц.
Учитывая, что в мире существуют миллионы различных SKU и сотни тысяч сайтов конкурирующих друг с другом компаний, можно только себе представить тот огромный трафик, который генерируется из-за огромного потока запросов от ботов, днем и ночью «парсящих» сайты. К примеру, в одном только цифровом или DIY ритейле в каталогах и прайсах могут быть представлены десятки и сотни тысяч наименований, а в автозапчастях для иномарок общая номенклатура может составлять многие десятки миллионов артикулов. Некоторые компании разрабатывают собственные системы и сервисы для отслеживания и изучения цен конкурентов, другие пользуются сторонними облачными решениями, предоставляющими доступ к своим услугам на платной основе.
Помимо разработки сетевых пауков и парсеров, одной из основных задач, с которой сталкиваются сервисы мониторинга цен конкурентов, является задача сопоставления товарных позиций, т.н. «матчинг». Полученные в процессе парсинга товарные позиции нужно состыковать, свести друг с другом, чтобы в итоге получить возможность строить отчеты и сравнивать цены в сводных таблицах, определяя минимальную и максимальную цену на один и тот же товар. Задача это довольно сложная, учитывая огромный объем существующих SKU и часто решается с помощью применения регулярных выражений и прочих продвинутых алгоритмов машинного обучения.
Многие товары могут иметь одинаковый артикул, но быть разного цвета или размера, и это будет считаться разным товаром с разной ценой. Другие категории товаров, особенно не имеющие отношения к цифровой и бытовой технике, электронике, автозапчастям, часто имеют одно только название и не имеют других отличительных признаков и спецификаций, таких как артикул производителя, серийный номер или штрихкод. Данные категории товаров очень сложно автоматически сопоставлять друг с другом, поэтому некоторые сервисы часто берутся работать только с продавцами технически сложной продукции - цифровой и бытовой техники, аксессуаров, т.е. там, где есть уникальные идентификаторы или параметры, и есть возможность хоть за что-то зацепиться при «матчинге» позиций друг с другом. Ибо каких-либо надежных способов стыковки двух абсолютно разных товаров, имеющих одинаковое название на вроде «платье жен. Китай, зеленое», пока еще не придумали.
Отдельной и весьма нетривиальной задачей является парсинг цен с некоторых товарных агрегаторов (прайс-площадок, маркетплейсов). Обычно эти сайты имеют самую изощренную и устойчивую защиту от парсинга, т.к. владельцами данных сайтов часто являются крупные и известные технологические компании, которые обладают существенными ресурсами для затруднения и даже полного пресечения работы сетевых пауков. Некоторые «умельцы», которые смогли придумать, как обойти защиту известных сайтов-агрегаторов, продают доступ к специальным API для получения данных по ценам товаров за немалые деньги. Однако защита от парсинга со стороны прайс-площадок постоянно совершенствуется, латаются «старые дыры», закрываются существующие бреши, в итоге подобные сервисы приходится или закрывать, или вводить квоты на количество выполняемых запросов в секунду и отменять старые тарифы, позволявшие ранее парсить цены в несколько параллельных потоков.
Одной из ключевых возможностей сервисов мониторинга цен конкурентов является «репрайсинг», т.е. автоматический расчет своей оптимальной (рекомендованной) цены с учетом минимально возможной цены и собранных данных о ценах конкурентов. Для формирования оптимальной цены могут применяться специальные формулы расчета по группам, брендам и отдельным товарным позициям. При наступлении каких-либо событий, связанных с аномальными отклонениями цен на отдельные группы или товарные позиции, пользователям сервиса настраивается отправка специальных информационных уведомлений. У многих интернет-магазинов каталоги обновляются ежедневно и даже по нескольку раз за день, поэтому сервис должен подстраиваться под график обновления цен каждого интернет-магазина, чтобы на выходе предоставлять своим клиентам наиболее свежие данные. Это позволяет оперативно реагировать на любые резкие скачки цен в рамках развязанных конкурентами «ценовых войн» и прочих малоприятных проявлений демпинга.
Имеющаяся отчетность должна давать возможность анализа и сопоставления цен в самом широком диапазоне срезов данных: по регионам, городам, брендам, производителям, конкурентам и т.д. с выводом динамики изменений за прошлые периоды времени. Отчеты в том числе должны давать возможность легко выявлять трудно объяснимые флуктуации (скачки) цен на тот или иной товар. Функционал сервиса мониторинга цен конкурентов может быть востребован не только розничными продавцами, но и производителями, для анализа цен на аналогичный товар по другим брендам. В этом случае сервисом должна решаться задача сопоставления товаров-аналогов от разных производителей.
Сервис также может служить в качестве эффективного инструмента по определению розничного демпинга, когда производитель контролирует наличие и цену собственного товарного ассортимента у своих дилеров и у «конечных» продавцов. При поступлении фактов о подозрительно низких ценах, отклоняющихся в меньшую сторону от рекомендованных производителем цен, достаточно легко выявляются продавцы «серой» и контрафактной продукции. Какую еще пользу может извлечь производитель? Конечно же, проконтролировать наличие своего товара на «виртуальных полках» интернет-магазинов, чтобы продуктивнее работать над расширением представленности ассортимента там, где это действительно необходимо.
Способы защиты от парсинга и методы их обхода
При сборе информации о ценах конкурентов, на сервера, которые отвечают за работоспособность интернет-сайтов и интернет-магазинов, оказывается существенная нагрузка, которая может привести к замедлению работы или полной неработоспособности. Кроме того, многие компании испытывают естественное желание защититься от автоматического сбора своих цен конкурентами и стараются всячески этому помешать. В этом случае на сайте организуется ряд комплексных мер для защиты от парсинга и «граббинга», в рамках которых применяются различные трюки и ухищрения, направленные на выявление и блокировку ботов.
Иногда защита бывает достаточно сложной, и чтобы ее преодолеть, разработчикам «сетевых пауков» нужно обладать высокой квалификацией и большим опытом работы. Некоторые компании организуют защиту с помощью определения ботов по косвенным признакам и специально «подмешивают» в выдачу цен некорректные значения или вовсе блокируют запросы на получение страниц с данными. Практически всегда используется какая-либо многоступенчатая комбинация, состоящая из одновременного применения сразу нескольких методов защиты. Дополнительной сложностью преодоления подобных защит является то, что они периодически меняются и совершенствуются, поэтому сервисам онлайнового мониторинга цен конкурентов приходится постоянно «держать ухо востро», превентивно отслеживая любые изменения для корректного получения данных.
Стандартной практикой защиты от парсинга служит динамическая выдача контента посредством так называемых AJAX-запросов, когда веб-сервер в ответ на стандартный GET-запрос сперва возвращает «каркас» html-страницы без данных, а затем выполняется дополнительный динамический POST-запрос, который собственно получает прайс-лист и выводит его на странице. Данная защита довольно легко обходится и полезна только в том случае, если сетевой паук не «заточен» под парсинг конкретного сайта и работает глобально по всем сайтам подряд, собирая данные «вслепую».
Еще одним вариантом защиты является проверка заголовков http-запросов, в которых проверяется наличие и корректное заполнение строки User-Agent и других параметров, которые должны в обязательном порядке присутствовать в заголовке запроса, инициируемого любым используемым браузером. Строка User-Agent всегда заполняется каждым браузером, туда прописывается обычно его название и текущая версия, тем самым браузер как бы «представляется» веб-серверу кто он есть такой при запросе данных. Дополнительно к проверкам обязательных параметров могут проверятся т.н. «cookies» на предмет наличия специфических «кук» (фрагментов данных обмена браузера пользователя с веб-сервером), оставляемых счетчиками систем веб-аналитики вроде Яндекс Метрики или Google Analytics. При отсутствии этих «фрагментов», защита может посчитать что запрос выполняется не браузером, а ботом, вследствие чего запрос будет отклонен, а IP адрес пользователя заблокирован. Грамотно разработанный парсер всегда маскируется под какой-либо распространенный браузер и способен эмулировать наличие любых cookies в запросах, так что преодоление данного способа защиты особого труда не представляет.
Еще одной распространенной практикой является ограничение количества запросов с одного IP-адреса в минуту, что позволяет предотвратить так называемый «hammering», или «долбежку» сайта большим количеством запросов в единицу времени. Этот способ «самообороны» также достаточно легко обходится, т.к. все «продвинутые» сетевые пауки и боты используют огромное количество прокси (промежуточных компьютеров, которые являются посредниками между компьютером пользователя и интернетом), в том числе и те, которые попадают в открытый доступ в виде отдельных списков. Данные прокси обычно выявляются сервисами, предоставляющими услуги по интернет-анонимизации, которые систематически сканируют интернет на предмет открытых портов и выкладывают найденные прокси в открытый или закрытый доступ по платной подписке.
Сетевой паук в процессе своей работы использует собственные базы прокси плюс непрерывно получает свежие списки, что позволяет ему постоянно маскироваться под все новые и новые IP-адреса и успешно выполнять запросы на получение данных. Другим вариантом защиты является встраивание в html-страницу «ловушек» в виде скрытых полей, которые на самом деле не могут быть заполнены человеком, однако которые заполняются ботами. Известны также такие варианты защиты как фиксация действий пользователя на сайте – определение движения мыши, прокрутка страницы и наведение курсора на элементы, таймауты заполнения полей и т.д.
Стоит упомянуть еще несколько способов существенного усложнения жизни авторам парсеров, которые нередко практикуются опытными разработчиками высоконагруженных интернет-магазинов. К этим способам относятся формирование динамической структуры html-страницы с «замусориванием» элементов и «подмешивание» на страницу случайных (рандомных) запросов на языке javascript. В первом случае динамическое формирование html-страницы не позволяет парсеру привязаться к жестко заданной структуре элементов, т.к. практически всегда при парсинге нужно опираться на какую-то логику расположения html-элементов.
В случае «подмешивания» на страницу произвольных скриптов, сложность состоит в том, чтобы с помощью парсера суметь выполнить случайный скрипт на языке javascript и передать полученное значение через динамический POST-запрос для того чтобы получить итоговые данные. Если для обычного браузера это не составит никаких проблем, то для большинства парсеров, которые не умеют выполнять код на javascript, это будет серьезным препятствием. Конечно, есть технологии, позволяющие ботам использовать «движок» javascript (PhantomJS/CasperJS и т.д.) для выполнения скриптов, однако они работают достаточно медленно, имеют проблемы с многопоточностью и не всегда способны корректно выполнять сложные конструкции случайного кода.
По нашему опыту, не существует в природе такой защиты от парсинга, которую нельзя было бы обойти. Любые способы защиты, их комбинация и дальнейшее совершенствование, способны усложнить жизнь разработчикам парсеров и сетевых пауков, однако нет каких-то непреодолимых проблем и все сервисы онлайн мониторинга цен конкурентов так или иначе решают свои задачи.
Юридические аспекты и сложности мониторинга цен
По законам Российской Федерации, цены на товары и услуги являются публичной и доступной информацией. Не существует такого закона, который в той или иной форме запрещал бы перепись, аудио, фото и видеосъемку ценников и другой публично доступной информации в торговых точках. Любые действия, препятствующие проведению сбора данных любым возможным в рамках закона способом, являются незаконными. Всякий креатив в виде грозных запрещающих знаков с перечеркнутыми фотоаппаратами и мобильными устройствами является не более чем страшилкой, придуманной руководством торговой точки.
Однако любой исполнитель мониторинга, который осуществляет сбор данных в магазине конкурента, может столкнуться с различными формами противодействия, как со стороны линейного персонала, так и со стороны охраны. Бывает и так, что директор магазина, узнав о фактах «снятия» информации по ценам при попустительстве работников торгового зала и охраны, может наложить суровое дисциплинарное взыскание вплоть до увольнения. Директора магазина тоже можно понять, ибо в рамках конкурентной борьбы, реакция на действия конкурентов может быть весьма жесткой. Поэтому со стороны штатных сотрудников магазина можно ожидать чего угодно, особенно если они четко знают, что их ждет наказание за отсутствие реакции на любые виды «ценового шпионажа».
Наиболее оптимальным и не привлекающим внимания средством сбора информации в магазинах является использование мобильных устройств, особенно если они входят в состав специального облачного сервиса мониторинга цен конкурентов. Парадоксально, но в современных реалиях человек, который переписывает цены на бумаге или наговаривает что-то в диктофон, сейчас привлекает куда больше внимания чем тот, который что-то печатает или фотографирует в своем мобильном устройстве. Почему? Потому что смартфоны и планшеты есть абсолютно у всех на руках и человек, который «строчит» на ходу смс сообщение или общается в Telegram и WhatsUp никого не удивит.
Однако есть и обратная сторона медали в случае использования на мобильных устройствах «продвинутых» систем вроде автоматического распознавания ценников. В этом случае исполнителю мониторинга приходится фотографировать каждый ценник, да еще с учетом определенных требований к фотографии, при которых должен выдерживаться определенный угол съемки, быть отключенной вспышка, чтобы не было бликов, сделано точное попадание «прицела» камеры в рамки и т.д. Все это привлекает к человеку, фотографирующему каждый ценник, намного больше внимания, нежели к тому, что просто вводит цены, проходя по списку товаров в мобильном приложении. Со стороны, человек, который вводит цены вручную, выглядит более естественно, т.к. никто на самом деле не знает, что он там «набивает» у себя в смартфоне.
При выявлении факта мониторинга персоналом магазина, самым худшим вариантом будет попытка ввязаться в конфликт, «покачать права». Лучше всего попытаться по-хорошему договориться, пообещав вести себя незаметно. Если попытка договориться не удалась, и мониторинг периодически выполняет штатный сотрудник компании, то лучше по-тихому удалиться из торговой точки, т.к. конфликтных людей запоминают намного чаще и продолжают помнить намного дольше. Однако если сбор цен выполняет «разовый» исполнитель (например, студент или пенсионер), который вряд ли еще раз вернется в эту торговую точку в той же самой роли, то он вполне себе может и поспорить в случае развития конфликтной ситуации, или «давить на жалость», рассказывая о своем тяжелом финансовом положении.
Если исполнитель мониторинга сам по себе неплохой психолог, то он может вербально воздействовать на другую сторону, придумав какую-нибудь уважительную причину или легенду, поддавшись на которую, ему позволят закончить начатое. Наиболее частыми аргументами, которые услышит исполнитель во время развития конфликтной ситуации, будут: «наш магазин - это частная собственность, где мы сами устанавливаем любые правила и порядки» и «цены – это коммерческая тайна». Со всеми этими аргументами можно легко поспорить. Человек, который фотографирует ценники или переписывает цены ни коим образом не портит товары, т.е. не совершает никаких противоправных действий в отношении неприкосновенности частной собственности. Второй аргумент, касающийся коммерческой тайны, вообще несостоятелен в отношении магазина, т.к. главный признак коммерческой тайны - это ограниченный доступ к ней определенного круга лиц. В случае магазина, где всем желающим напоказ выставлены цены на товар, оперирование понятием коммерческой тайны является некорректным. Другое дело, если бы речь шла о попытке проникновения в служебные и подсобные помещения, однако торговый зал - это вполне себе публичное место, где законы о коммерческой тайне не действуют.
Что же касается автоматического сбора информации по ценам на сайтах интернет-магазинов, то парсинг является законным, если в процессе его выполнения не происходит нарушения законодательства. Согласно действующему законодательству Российской Федерации, парсинг проводится на вполне законных основаниях, если в процессе сбора информации в интернете:
- Не нарушаются авторские и смежные права;
- Не осуществляется неправомерный доступ к охраняемой законом информации;
- Не выполняется сбор сведений и данных, составляющих коммерческую тайну;
Подытожив имеющиеся законодательные нормы и правила, можно утверждать, что любая форма автоматического сбора информации разрешена в том случае, если инициатор этих действий придерживается следующих правил:
- Контент, извлекаемый с помощью парсинга, не является объектом защиты авторского права;
- Процесс парсинга не нарушает работу сайта и не превращается в DDOS-атаку;
- В процессе извлечения информации не собираются никакие личные данные пользователей;
Конечно, можно немного поспекулировать на предмет пункта о нарушении работы сайта в результате повышенной нагрузки на него из-за действий ресурсов, автоматически собирающих данные. Однако доказать, что конкретный парсинг нарушает работу сайта довольно сложно, т.к. можно легко сослаться на работу любых поисковых систем, которые регулярно занимаются тем же самым в намного большем объеме. Кроме того, поисковые системы заняты сбором всего контента сайта, включая не только прайсы, каталоги и отдельные страницы товаров, но и любые формы текстового контента, такие как блог компании, контактная информация и т.д. В то время как парсер работает узконаправленно на получение конкретной информации в виде цен, поисковые системы собирают все подряд.
Также может быть интересно:
Электронный чек-лист. Выбираем лучший облачный сервис для проверок, инспекций и аудитов
Торговый аудит. Современные подходы к эффективному аудиту торговых точек.
Индекс лояльности клиентов NPS как метрика репутации компании
Мобильные технологии как драйвер развития агропрома и пищепрома. Электронные чек-листы в арсенале инноваций АПК и перерабатывающих предприятий.