Что значит парсинг сайта

Как спарсить любой сайт?

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайта

Меня зовут Даниил Охлопков, и я расскажу про свой подход к написанию скриптов, извлекающих данные из интернета: с чего начать, куда смотреть и что использовать.

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

Чтобы спарсить данные с вебсайта, пробуйте подходы именно в таком порядке:

Найдите официальное API,

Найдите XHR запросы в консоли разработчика вашего браузера,

Найдите сырые JSON в html странице,

Отрендерите код страницы через автоматизацию браузера,

Совет профессионалов: не начинайте с BS4/Scrapy

Крутые вебсайты с крутыми продактами делают тонну A/B тестов, чтобы повышать конверсии, вовлеченности и другие бизнес-метрики. Для нас это значит одно: элементы на вебстранице будут меняться и переставляться. В идеальном мире, наш написанный парсер не должен требовать доработки каждую неделю из-за изменений на сайте.

Приходим к выводу, что не надо извлекать данные из HTML тегов раньше времени: разметка страницы может сильно поменяться, а CSS-селекторы и XPath могут не помочь. Используйте другие методы, о которых ниже. ⬇️

Используйте официальный API

Поищите XHR запросы в консоли разработчика

Все современные вебсайты (но не в дарк вебе, лол) используют Javascript, чтобы догружать данные с бекенда. Это позволяет сайтам открываться плавно и скачивать контент постепенно после получения структуры страницы (HTML, скелетон страницы).

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайта

В итоге, даже не имея официального API, можно воспользоваться красивым и удобным закрытым API. ☺️

Даже если фронт поменяется полностью, этот API с большой вероятностью будет работать. Да, добавятся новые поля, да, возможно, некоторые данные уберут из выдачи. Но структура ответа останется, а значит, ваш парсер почти не изменится.

Алгорим действий такой:

Открывайте вебстраницу, которую хотите спарсить

Открывайте вкладку Network и кликайте на фильтр XHR запросов

Обновляйте страницу, чтобы в логах стали появляться запросы

Найдите запрос, который запрашивает данные, которые вам нужны

Копируйте запрос как cURL и переносите его в свой язык программирования для дальнейшей автоматизации.

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайтаКнопка, которую я искал месяцы

Поищите JSON в HTML коде страницы

Как было удобно с XHR запросами, да? Ощущение, что ты используешь официальное API. 🤗 Приходит много данных, ты все сохраняешь в базу. Ты счастлив. Ты бог парсинга.

Но тут надо парсить другой сайт, а там нет нужных GET/POST запросов! Ну вот нет и все. И ты думаешь: неужели расчехлять XPath/CSS-selectors? 🙅‍♀️ Нет! 🙅‍♂️

Чтобы страница хорошо проиндексировалась поисковиками, необходимо, чтобы в HTML коде уже содержалась вся полезная информация: поисковики не рендерят Javascript, довольствуясь только HTML. А значит, где-то в коде должны быть все данные.

Современные SSR-движки (server-side-rendering) оставляют внизу страницы JSON со всеми данные, добавленный бекендом при генерации страницы. Стоп, это же и есть ответ API, который нам нужен! 😱😱😱

Вот несколько примеров, где такой клад может быть зарыт (не баньте, плиз):

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайтаКрасивый JSON на главной странице Habr.com. Почти официальный API! Надеюсь, меня не забанят. Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайтаИ наш любимый (у парсеров) Linkedin!

Алгоритм действий такой:

В dev tools берете самый первый запрос, где браузер запрашивает HTML страницу (не код текущий уже отрендеренной страницы, а именно ответ GET запроса).

Внизу ищите длинную длинную строчку с данными.

Вырезаете JSON из HTML любыми костылямии (я использую html.find(«=<") ).

Отрендерите JS через Headless Browsers

Если коротко, то есть инструменты, которые позволяют управлять браузером: открывать страницы, вводить текст, скроллить, кликать. Конечно же, это все было сделано для того, чтобы автоматизировать тесты веб интерфейса. I’m something of a web QA myself.

После того, как вы открыли страницу, чуть подождали (пока JS сделает все свои 100500 запросов), можно смотреть на HTML страницу опять и поискать там тот заветный JSON со всеми данными.

Для масштабируемости и простоты, я советую использовать удалённые браузерные кластеры (remote Selenium grid).

Вот так я подключаюсь к Selenoid из своего кода: по факту нужно просто указать адрес запущенного Selenoid, но я еще зачем-то передаю кучу параметров бразеру, вдруг вы тоже захотите. На выходе этой функции у меня обычный Selenium driver, который я использую также, как если бы я запускал браузер локально (через файлик chromedriver).

Парсите HTML теги

Если случилось чудо и у сайта нет ни официального API, ни вкусных XHR запросов, ни жирного JSON внизу HTML, если рендеринг браузерами вам тоже не помог, то остается последний, самый нудный и неблагодарный метод. Да, это взять и начать парсить HTML разметку страницы. То есть, например, из Cool website достать ссылку. Это можно делать как простыми регулярными выражениями, так и через более умные инструменты (в питоне это BeautifulSoup4 и Scrapy) и фильтры (XPath, CSS-selectors).

Мой единственный совет: постараться минимизировать число фильтров и условий, чтобы меньше переобучаться на текущей структуре HTML страницы, которая может измениться в следующем A/B тесте.

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайта

Подписывайтесь на мой Телеграм канал, где я рассказываю свои истории из парсинга и сливаю датасеты.

Источник

Что такое парсер и как он работает

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайта

Чтобы поддерживать информацию на своем ресурсе в актуальном состоянии, наполнять каталог товарами и структурировать контент, необходимо тратить кучу времени и сил. Но есть утилиты, которые позволяют заметно сократить затраты и автоматизировать все процедуры, связанные с поиском материалов и экспортом их в нужном формате. Эта процедура называется парсингом.

Давайте разберемся, что такое парсер и как он работает.

Что такое парсинг?

Начнем с определения. Парсинг – это метод индексирования информации с последующей конвертацией ее в иной формат или даже иной тип данных.

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайта

Парсинг позволяет взять файл в одном формате и преобразовать его данные в более удобоваримую форму, которую можно использовать в своих целях. К примеру, у вас может оказаться под рукой HTML-файл. С помощью парсинга информацию в нем можно трансформировать в «голый» текст и сделать понятной для человека. Или конвертировать в JSON и сделать понятной для приложения или скрипта.

Но в нашем случае парсингу подойдет более узкое и точное определение. Назовем этот процесс методом обработки данных на веб-страницах. Он подразумевает анализ текста, вычленение оттуда необходимых материалов и их преобразование в подходящий вид (тот, что можно использовать в соответствии с поставленными целями). Благодаря парсингу можно находить на страницах небольшие клочки полезной информации и в автоматическом режиме их оттуда извлекать, чтобы потом переиспользовать.

Ну а что такое парсер? Из названия понятно, что речь идет об инструменте, выполняющем парсинг. Кажется, этого определения достаточно.

Какие задачи помогает решить парсер?

При желании парсер можно сподобить к поиску и извлечению любой информации с сайта, но есть ряд направлений, в которых такого рода инструменты используются чаще всего:

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайта

Серый парсинг

Такой метод сбора информации не всегда допустим. Нет, «черных» и полностью запрещенных техник не существует, но для некоторых целей использование парсеров считается нечестным и неэтичным. Это касается копирования целых страниц и даже сайтов (когда вы парсите данные конкурентов и извлекаете сразу всю информацию с ресурса), а также агрессивного сбора контактов с площадок для размещения отзывов и картографических сервисов.

Но дело не в парсинге как таковом, а в том, как вебмастера распоряжаются добытым контентом. Если вы буквально «украдете» чужой сайт и автоматически сделаете его копию, то у хозяев оригинального ресурса могут возникнуть вопросы, ведь авторское право никто не отменял. За это можно понести реальное наказание.

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

Где найти парсер?

Добыть утилиту для поиска и преобразования информации с сайтов можно четырьмя путями.

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

Плюсы парсинга

У автоматического сбора информации куча преимуществ (по сравнению с ручным методом):

Так что нет никакого смысла «парсить» руками, когда можно доверить эту операцию подходящему ПО.

Минусы парсинга

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

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

Но все методы защиты легко обходятся, поэтому, скорее всего, придется с этим явлением мириться.

Алгоритм работы парсера

Парсер работает следующим образом: он анализирует страницу на наличие контента, соответствующего заранее заданным параметрам, а потом извлекает его, превратив в систематизированные данные.

Процесс работы с утилитой для поиска и извлечения найденной информации выглядит так:

Естественно, процедура парсинга через специализированное ПО описана лишь в общих чертах. Для каждой утилиты она будет выглядеть по-разному. Также на процесс работы с парсером влияют цели, преследуемые пользователем.

Как пользоваться парсером?

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

При работе с парсером весь процесс строится вокруг вводимых параметров для поиска и извлечения контента. В зависимости от того, с какой целью планируется парсинг, будут возникать тонкости в определении вводных. Придется подгонять настройки поиска под конкретную задачу.

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

Парсинг интернет-магазина

Это наиболее частый сценарий использования утилит для автоматического сбора данных. В этом направлении обычно решаются сразу две задачи:

В первом случае стоит воспользоваться утилитой Marketparser. Указать в ней код продукта и позволить самой собрать необходимую информацию с предложенных сайтов. Большая часть процесса будет протекать на автомате без вмешательства пользователя. Чтобы увеличить эффективность анализа информации, лучше сократить область поиска цен только страницами товаров (можно сузить поиск до определенной группы товаров).

Во втором случае нужно разыскать код товара и указать его в программе-парсере. Упростить задачу помогают специальные приложения. Например, Catalogloader – парсер, специально созданный для автоматического сбора данных о товарах в интернет-магазинах.

Парсинг других частей сайта

Принцип поиска других данных практически не отличается от парсинга цен или адресов. Для начала нужно открыть утилиту для сбора информации, ввести туда код нужных элементов и запустить парсинг.

Разница заключается в первичной настройке. При вводе параметров для поиска надо указать программе, что рендеринг осуществляется с использованием JavaScript. Это необходимо, к примеру, для анализа статей или комментариев, которые появляются на экране только при прокрутке страницы. Парсер попытается сымитировать эту деятельность при включении настройки.

Также парсинг используют для сбора данных о структуре сайта. Благодаря элементам breadcrumbs, можно выяснить, как устроены ресурсы конкурентов. Это помогает новичкам при организации информации на собственном проекте.

Обзор лучших парсеров

Далее рассмотрим наиболее популярные и востребованные приложения для сканирования сайтов и извлечения из них необходимых данных.

В виде облачных сервисов

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

Преимущество этого облака заключается в отсутствии необходимости устанавливать дополнительное программное обеспечение на компьютер. А еще у них зачастую есть API, позволяющее настроить поведение парсера под свои нужды. Но настроек все равно заметно меньше, чем при работе с полноценным приложением-парсером для ПК.

Наиболее популярные облачные парсеры

Похожих сервисов в сети много. Причем как платных, так и бесплатных. Но вышеперечисленные используются чаще остальных.

В виде компьютерных приложений

Есть и десктопные версии. Большая их часть работает только на Windows. То есть для запуска на macOS или Linux придется воспользоваться средствами виртуализации. Либо загрузить виртуальную машину с Windows (актуально в случае с операционной системой Apple), либо установить утилиту в духе Wine (актуально в случае с любым дистрибутивом Linux). Правда, из-за этого для сбора данных потребуется более мощный компьютер.

Наиболее популярные десктопные парсеры

Это наиболее востребованные утилиты для парсинга. У каждого из них есть демо-версия для проверки возможностей до приобретения. Бесплатные решения заметно хуже по качеству и часто уступают даже облачным сервисам.

В виде браузерных расширений

Это самый удобный вариант, но при этом наименее функциональный. Расширения хороши тем, что позволяют начать парсинг прямо из браузера, находясь на странице, откуда надо вытащить данные. Не приходится вводить часть параметров вручную.

Но дополнения к браузерам не имеют таких возможностей, как десктопные приложения. Ввиду отсутствия тех же ресурсов, что могут использовать программы для ПК, расширения не могут собирать такие огромные объемы данных.

Но для быстрого анализа данных и экспорта небольшого количества информации в XML такие дополнения подойдут.

Наиболее популярные расширения-парсеры

Вместо заключения

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

Источник

Правда про парсинг сайтов, или «все интернет-магазины делают это»

1. Что такое парсинг?

Раскрою вам тайну: парсингом занимаются все… По крайней мере, все крупные игроки на рынке. Пару лет назад в одной из статей в Ведомостях представители “М-видео”, “Связного” и “Ситилинка” даже в открытую говорили об этом в ответ на интерес ФАС (см. тут).

2. Для чего парсинг нужен?

В первую очередь, целью парсинга является ценовая «разведка», ассортиментный анализ, отслеживание товарных акций. “Кто, что, за сколько и в каких количествах продаёт?” – основные вопросы, на которые парсинг должен ответить. Если говорить более подробно, то парсинг ассортимента конкурентов или того же Яндекс.Маркет отвечает на первые три вопроса.

С оборотом товара несколько сложней. Однако, такие компании как “Wildberries”, “Lamoda“ и Леруа Мерлен, открыто предоставляют информацию об ежедневных объемах продаж (заказах) или остатках товара, на основе которой не сложно составить общее представлении о продажах (часто слышу мнение, мол эти данные могут искажаться намеренно — возможно, а возможно и нет). Смотрим, сколько было товара на складе сегодня, завтра, послезавтра и так в течении месяца и вот уже готов график и динамика изменения количества по позиции составлена (оборачиваемость товара фактически). Чем выше динамика, тем больше оборот.

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайта

Потенциально возможный способ узнать оборачиваемость товаров с помощью ежедневного анализа остатков сайта Леруа Мерлен.

Можно, конечно, сослаться на перемещение товаров между точками. Но суммарно, если брать, например, Москву — то число не сильно изменится, а в существенные передвижения товара по регионам верится с трудом.

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

Во-вторых, парсинг используется для получения контента. Здесь уже могут иметь место истории в стиле “правовых оттенков серого”. Многие зацикливаются на том, что парсинг – это именно воровство контента, хотя это совершенно не так. Парсинг – это всего лишь автоматизированный сбор информации, не более того. Например, парсинг фотографий, особенно с “водяными знаками” – это чистой воды воровство контента и нарушение авторских прав. Потому таким обычно не занимаются (мы в своей работе ограничиваемся сбором ссылок на изображения, не более того… ну иногда просят посчитать количество фотографий, отследить наличие видео на товар и дать ссылку и т.п.).

Касательно сбора контента, интересней ситуация с описаниями товаров. Недавно нам поступил заказ на сбор данных по 50 сайтам крупных онлайн-аптек. Помимо информации об ассортименте и цене, нас попросили “спарсить” описание лекарственных аппаратов – то самое, что вложено в каждую пачку и является т.н. фактической информацией, т.е. маловероятно попадает под закон о защите авторских прав. В результате вместо набора инструкций вручную, заказчикам останется лишь внести небольшие корректировки в шаблоны инструкций, и всё – контент для сайта готов. Но да, могут быть и авторские описания лекарств, которые заверены у нотариуса и сделаны специально как своего рода ловушки для воришек контента :).

Рассмотрим также сбор описания книг, например, с ОЗОН.РУ или Лабиринт.ру. Здесь уже ситуация не так однозначна с правовой точки зрения. С одной стороны, использование такого описания может нарушать авторское право, особенно если описание каждой карточки с товаром было нотариально заверено (в чём я сильно сомневаюсь — ведь может и не быть заверено, исключение — небольшие ресурсы, которые хотят затаскать по судам воров контента). В любом случае, в данной ситуации придётся сильно «попотеть», чтобы доказать уникальность этого описания. Некоторые клиенты идут еще дальше — подключают синонимайзеры, которые «на лету» меняют (хорошо или плохо) слова в описании, сохраняя общий смысл.

Ещё одно из применений парсинга довольно оригинально – “самопарсинг”. Здесь преследуется несколько целей. Для начала – это отслеживание того, что происходит с наполнением сайта: где битые ссылки, где описания не хватает, дублирование товаров, отсутствие иллюстраций и т.д. Полчаса работы парсера — и вот у тебя готовая таблица со всеми категориями и данными. Удобно! “Самопарсинг” можно использовать и для того, чтобы сравнить остатки на сайте со своими складскими остатками (есть и такие заказчики, отслеживают сбои выгрузок на сайт). Ещё одно применение “самопарсинга”, с которым мы столкнулись в работе — это структурирование данных с сайта для выгрузки их на Яндекс Маркет. Ребятам так проще было сделать, чем вручную этим заниматься.

Также парсятся объявления, например, на ЦИАН-е, Авито и т.д. Цели тут могут быть как перепродажи баз риелторам или туроператорам, так и откровенный телефонный спам, ретаргетинг и т.п. В случае с Авито это особенно явно, т.к. сразу составляется таблица с телефонами пользователей (несмотря на то, что Авито подменяет телефоны пользователей для защиты и публикует их в виде изображения, от поступающих звонков все равно никуда не уйти).

3. “Что в резюме тебе моем?” или парсинг HH.RU

В последнее время стали актуальны запросы на парсинг Headhunter-а. Правда сначала люди просят продать им “базу Хедхантера”. Но, когда уже понимают, что никакой базы у нас нет и быть не может, мы переходим к разговору о парсинге в их профиле (“под паролем”). Это своеобразное направление парсинга и, честно говоря, нам оно не особо интересно, однако рассказать о нём стоит.

В чём тонкость? Клиент предоставляет доступ к своему аккаунту и ставит задачу по сбору данных под свои нужды. Т.е. он уже оплатил доступ к базе HH и, подписывая с нами договор, ставит нам задачу на автоматический сбор информации в его интересах и под его аккаунтом, что находится полностью под его ответственностью. В случае, если HH зафиксирует ненормальную активность, аккаунт будет заблокирован. Потому мы стараемся как можно лучше сымитировать человеческую деятельность при сборе данных.

Если бы HH (насколько знаю “успешно” проваливший свои эксперименты с API) сам предоставлял (продавал) данные в табличке по регионам, скажем, контакты всех работающих в данный момент директоров по маркетингу в Москве, к нам бы никто и не приходил. А пока это приходится делать человеку “ручками”, к нам идут. Ведь, когда у тебя есть такая таблица, заниматься рекламным спамом – холодными звонками намного удобнее.

Подчеркну ещё раз, у нас нет базы HH, мы просто собираем данные для каждого клиента под его нужды, его аккаунтом и его ответственностью. И нарушение договора оферты не связано с использованием сайта парсящей стороной. Подписывая с нами договор, клиент получает за прогон контакты порядка 450-ти ЛПР-ов, которые мы положим к нему на сервер, и дальше уже его отдел продаж сам решит, что с этим делать. Эх, мы бы тоже “спамили”, если б у нас была такая база. Шучу 🙂

Хотя, лично я считаю, что нет перспектив в парсинге под паролем. А вот парсинг открытых ресурсов – это другое дело. Ты один раз настроил всё и парсишь постоянно, потом перепродаешь доступ ко всем собранным данным. Это более перспективно.

4. Парсинг вообще законен?

В российском законодательстве нет статьи, запрещающей парсинг. Запрещен взлом, DDOS, воровство авторского контента, а парсинг – это ни то, ни другое, не третье и, соответственно, он не запрещен.

Некоторые люди воспринимают парсинг как DDOS-атаку и относятся к нему с сомнением. Однако, это совершенно разные вещи, и при парсинге мы, напротив, стараемся как можно меньше нагружать целевой сайт и не навредить бизнесу. Как в случае со здоровым паразитизмом – мы не хотим, чтобы бизнес «отбросил копыта», иначе нам не на чем будет “паразитировать”.

Обычно просят парсить крупные сайты, из топа 300-500 сайтов России. На таких сайтах посещаемость, как правило, несколько миллионов в месяц, может даже и больше. И на таком фоне парсинг одного товара в секунду или в две практически незаметен (нет смысла чаще парсить, 1-2 секунды на товар — это оптимальная скорость для крупных сайтов). Соответственно, и намека на DDOS-атаку в наших действиях нет. Очень редко люди просят чтобы мы обновляли, например, весь сайт БЕРУ.РУ за сутки — это, скажем прямо, перебор и слишком высокая нагрузка на сайт… обычно занимает 3-4 дня.

Напомню, что парсинг – это лишь сбор того, что мы можем своими глазами увидеть на сайте и скопировать к себе руками. Таким образом, под статью об авторском праве могут попасть лишь действия с уже собранной информацией, т.е. действия самого заказчика. Просто человек это делает долго медленно и с ошибками, а парсер – быстро и не ошибается. Что же делать, когда речь касается сбора данных с AliExpress или Wildberies? Человеку просто не под силу такая задача, и парсинг – единственный выход.

Правда, недавно попросили парсить сайт государственной организации – суда, если не ошибаюсь. Там в открытом доступе вся информация, но мы (на всякий случай) отказались. 🙂

5. “Вы чего нас парсите, мы же заказчик” или в чем разница между парсингом и мониторингом цен?

Мониторинг цен – одно из наиболее востребованных направлений применения парсинга. Но с ним не всё так просто – поработать в данном случае придётся не только нам, но и самому клиенту.

При заказе на мониторинг цен мы сразу предупреждаем, что будем парсить не только конкурентов, но и заказчика. Это необходимо для получения схожих таблиц с товарами и ценами, которые мы сможем обновлять автоматически. Однако, сами по себе такие данные не несут ценность, пока они не связаны между собой (так называемый матчинг товаров). Некоторые позиции с разных сайтов мы можем сопоставить автоматически, но, к сожалению, на данный момент “машины” еще не так хороши, чтобы сделать это гарантированно без ошибок, и лучше человека (например, работающего удаленно на полставки сотрудника из регионов) это никто не сделает.

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

Хорошо, что такую работу необходимо провести единожды, а потом периодически перепроверять и вносить небольшие корректировки, если требуется. При наличии связок мы уже можем обновлять такие таблицы автоматически. К тому же, обычно людям не требуется мониторить цены на всё: есть условно 3-5 тысяч позиций, которые в топе, а мелочь не представляет интерес. И оператор из региона легко сможет выполнять такую работу за деньги порядка 10 000 рублей в месяц.

Самый удачный и правильный кейс в данном случае, на мой взгляд, загружать полученный прайс лист конкурентов сразу к себе в 1С-ку (или другую ERP систему) и там уже выполнять сопоставление. Так мониторинг цен легче всего внедрить в ежедневную деятельность своих аналитиков. А без анализа такой парсинг никому и не нужен.

6. Как защититься от парсинга?

Да никак. И стоит ли вообще защищаться от парсинга? Я бы не стал. Работающей 100% защиты всё равно нет (точнее, мы еще не встречали), так что особого смысла пытаться защититься я не вижу. Лучшая защита от парсинга – это просто выложить готовую таблицу на сайте и написать – берите отсюда, обновляем раз в пару дней. Если люди так будут делать, то у нас хлеба не будет.

К слову говоря, недавно созванивались с IT директором крупной сети – они хотели протестировать свою защиту от парсинга. Я его напрямую спросил, почему они так не делают. Как технический специалист он прекрасно понимает, что никакая защита от парсинга не спасёт, лишь отпугнет дилетантов; а вот компании, которые зарабатывают на парсинге, вполне могут позволить себе исследовательскую деятельность в этом направлении – долго и мучительно разбираться в новой защите, и в итоге ее обойти…

Как правило, все используют однотипные защиты, и такое исследование пригодится еще не раз. Так вот, оказалось, что отдел маркетинга не готов к такому: “Зачем нам упрощать жизнь конкурентам?” Казалось бы, логично, но… В результате компания будет тратить деньги на защиту, которая не поможет, а паразитная нагрузка на сайт – останется. Хотя, справедливости ради, стоит отметить, что от «студентов» изучающих python и парсящих все что «шевелится» вполне может помочь.

Кстати, и “Яндекс”, и “Google” занимаются парсингом: они заходят на сайт и индексируют его – собирают информацию. Только все хотят, чтобы “Яндекс” и “Google” индексировали их сайты по понятным причинам, и никто не хочет, чтобы их парсили 🙂

7. “Я тут бесплатно поискал. ” или история про авиабилеты

Однажды к нам обратились с интересным заказом на тестовый парсинг. Компания занимается авиабилетами и им были интересны цены конкурентов на пару самых популярных направлений. Задача оказалась нетривиальной, т.к. пришлось повозиться с подстановкой и сопоставлением рейсов. Занимательным оказалось то, что цены у “Onetwotrip”, “Aviasales” и “Skyscanner” на одни и те же рейсы немного отличаются (разброс около 5-7%).

Проект показался мне очень интересным, и я выложил пост об этом в соц.сетях. К моему удивлению дискуссия под постом оказалась довольно агрессивной, и я не сразу понял почему. Затем мне написал гендиректор одной из компаний лидера рынка продажи билетов в России, и ситуация прояснилась. Выяснилось, что запросы о ценах на билеты для таких компаний платные, т.к. они берут информацию с международных платных сервисов. И, помимо паразитной нагрузки, парсинг представляет для них еще и финансовую.

В любом случае, никто же с вас не требует оплаты, если вы подыскиваете себе лично билеты на этих сервисах, а запросов обычные люди тоже делают немало пока перебирают разные варианты… В общем тут такая бизнес-дилемма 🙂

8. “Рецепты шеф-парсера”. или как мы работаем?

Думаю, для большего понимания всех аспектов парсинга стоит приоткрыть завесу нашей “внутренней кухни”.

Всё начинается с заказа. Иногда клиенты связываются с нами сами, а иногда звоним мы. Особенно удачно получается с заказами на мониторинг цен. В этом случае нам приходится парсить не только конкурентов, но и самого заказчика. Поэтому мы порой звоним тем, кого так или иначе парсим, и в открытую об этом говорим, предлагая свои услуги – работа ведь нами уже и так выполняется. Сначала реакция очень негативная, но проходит пара дней, эмоции спадают, и заказчики сами перезванивают, говоря: “Чёрт с ним! Кого вы ещё парсите?”

Парсинг у ОЧЕНЬ многих владельцев посещаемых ресурсов вызывает эмоции. Сначала негативные, ведь он схож с подглядыванием в замочную скважину. Затем перерастает в интерес, а потом и в осознание необходимости. Бизнесмены – умные люди. Когда эмоции сходят на нет и остаётся холодный расчёт, всегда возникает вопрос: “А, может, мы где-то недоработали, и нам тоже это нужно?”

Благодаря этим эмоциям мы довольно активно растём и развиваемся. На данный момент мы парсим порядка 300 сайтов в день. Обычно у нас заказывают по 8-15 сайтов, а парсинг одного стоит от 5 до 9 тысяч рублей в месяц, в зависимости от сложности подключения, ведь каждый сайт приходится подключать индивидуально (уходит где-то 4-5 часов на ресурс). Сложность заключается в том, что некоторые защищаются. Борьба идёт не столько с парсингом, сколько с некой паразитной нагрузкой, которая не приносит им прибыль, но иногда приходится повозиться.

В любом случае ВСЁ ПАРСИТСЯ, даже если цена на товар публикуется на сайте как картинка 🙂 Желающим попробовать свои силы в парсинге, рекомендую потренироваться на сайте «Аптеки Столички» и спарсить цены.

Что значит парсинг сайта. Смотреть фото Что значит парсинг сайта. Смотреть картинку Что значит парсинг сайта. Картинка про Что значит парсинг сайта. Фото Что значит парсинг сайта

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

Собранные данные передаются клиенту. Обычно мы размещаем их на собственном облаке, постоянно обновляя, и предоставляем клиенту доступ к ним по API. Если с данными вдруг становится что-то не так (а это бывает редко – раз в 3-4 месяца), нам сразу звонят-пишут, и мы стараемся устранить проблему как можно быстрее. Такие сбои возникают при установки новой защиты или блокировки, а решаются с помощью исследований и прокси соответственно. В другом случае, когда на сайте что-то меняется, бот просто перестает понимать, где что находится, и нашему программисту приходится заново его настраивать. Но всё решаемо, и заказчики обычно относятся к таким проблемам с пониманием.

Отмечу, что в нашем деле личность заказчика никогда не разглашается – мы относимся к этому достаточно трепетно, да и пункты в договоре о неразглашении никто не отменял. Хоть в парсинге и нет ничего предосудительного, но многие стесняются.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *