19,6 млн рублей за 2022 год. Парсинг сайтов. 25 советов желающим заняться
Меня зовут Максим Кульгин, моя компания xmldatafeed занимается парсингом сайтов в России порядка четырёх лет. По итогам прошедшего 2022 года поделюсь советами для тех, кто думает о подобном бизнесе. Бизнес очень интересный, но наполнен нюансами, которые и расскажу в статье.
Я ранее рассказывал про наш опыт развития бизнеса на парсинге сайтов в двух статьях (часть 1 и часть 2). Теперь хочу подвести итоги 2022 года и дать некоторые советы командам, которые хотят составить нам конкуренцию (не вижу, кстати, в этом ничего страшного, т. к. рынок довольно большой и скорее всего у вас будет свой путь, отличный от нашего). Никого, разумеется, не учу, пишу только наш опыт, с ним можно согласиться или нет — но у нас именно так… Всегда рад комментариям, которые заставляют задуматься и взглянуть на то, что делаем с другого ракурса.
В 2022 году мы чуть-чуть выросли по сравнению с 2021 годом и, как напишу ниже, февральские события оказали существенное влияние (да и на графике выше это заметно по марту 2022 г.). Сразу отмечу, что расходы и доходы — перетекающий остаток (декабрь 2021 на январь 2022 и т. п.), поэтому не ищите подвоха в том, что расходы больше доходов. Все что зарабатываем тратим на команду, на себя и на инновации (да-да, копошимся потихоньку и пытаемся нащупать новые ниши в этом бизнесе).
Итак…
1. Это проектный бизнес. Я мечтаю о продуктовом бизнесе, где затраты, по мере роста клиентской базы, растут не так линейно. В парсинге вы столкнетесь с обратным. Сейчас у нас 6 программистов fulltime и я понимаю, что если придут 2-3 крупных клиента — будем нанимать еще ребят (место, ПК, обучение и т. п.).
2. Продукт из парсинга нам сделать сложно. Подходили к этому «снаряду» пару раз, начинали и… бросали. Не утверждаю, что продуктовый подход тут не подойдет, но у нас видимо не хватает знаний, чтобы сделать. Решили больше даже не начинать :)
3. Аналитика никому особо не нужна. В комментариях к прошлым публикациям было много советов, что нужно делать аналитику и продавать дороже. Воодушевился, кинулись и … у нас не получилось. Не просят, не нужно, делают сами внутри своих систем (1С, Ексель, PowerBI, Google BigQuery и т. п.) . Плюнули и теперь даже не пытаемся. Концентрируемся на стабильном парсинге и предоставлении данных. Формат, кстати, не важен - csv/json/xml/excel - просят по разному.
4. Матчинг товаров не получается. Вы не поверите, но постоянно пишут микро-команды из очень умных ребят (пишу без малейшей иронии), которые предлагают сделать матчинг товаров с использованием "новых алгоритмов на базе (сверточных, пузырьковых и т. п.) нейронных сетей" и зарабатывать вместе. Даем на тестирование два набора данных аптечных сетей и просим связать товары между собой. Результат? Немногим лучше, чем с использованием вот этого бесплатного модуля для Excel. Я не утверждаю, что это невозможно, но факт в том, что за много лет у нас так и не получилось делать матчинг товаров лучше, чем руками человека.
5. СВО повиляло. Ощутили резкое падение выручки, боялись что бизнес «усохнет». Много клиентов ушло, но спасло то, что 50% из них потом вернулись и пришли новые в конце весны. Спасает то, что данные всегда будут нужны.
6. Невозможно парсить все сайта. Есть сайты, которые мы не парсим в нужных объемах и отказываем клиентам. Кто-то скажет, мол это нехватка компетенций — не соглашусь. Дело в том, что когда у вас стоят задачи на неделю вперед по текущим клиентам, которые платят — команда будет заниматься не исследовательской работой, а именно этими горящими задачами.
Хотите проверить свои способности в парсинге — Леруа Мерлен, регионы Москва + Питер, данные каждый день по всем товарам. Получится? Мы с вами работаем )
7. Холодные продажи у нас не работают. Мы так и не смогли внедрить «холодные» продажи на услугу парсинга. Делали несколько попыток, разными специалистами — не получается и все. Все клиенты приходят с сайта.
8. Поддержка только в «явочном порядке». Когда к вам приходит клиент и просит парсить, условно 450 сайтов (у нас есть такой), то отдел поддержки просто физически не сможет каждый день проверять содержимое всех CSV/XLS — файлов. Все, что удается системно делать — анализировать разницу в количестве данных между «вчера« и »сегодня» и при резком отличии в количестве — залезать «внутрь».
9. Вам будут нужны bare metal сервера — ищите просто где дешевле и все. Желательно в регионе, где находятся источники для вашего парсинга (у нас в ДЦ в Москве).
10. Вам потребуется хостер с безлимитным трафиком. Добавить нечего. Никаких «облаков» с тарификацией по гигабайтам.
11. Никогда не соглашайтесь на парсинг изображений. Только ссылки на картинки на сайтах-первоисточниках. Вопрос в авторском праве, ну а главное — объем данных. Будет много сайтов, вы просто не «переварите» объемы.
12. Вам нужен будет хостер, кто адекватно воспринимает abuse. Раз в квартал хостер будет получать abuse от тех сайтов, которые вы парсите. Не очень ведь здорово, если хостер просто отключит вам сервера? Поэтому договаривайтесь на «берегу».
13. Не занимайтесь парсингом персональных данных. Просить будут регулярно, не соглашайтесь. Причина? Это будет не бизнес, а временная «темка». Есть закон и он суров. Вы должны на 99% быть в правовом поле. Почему именно 99%? 1% оставляю на нюансы, которые вы будете обсуждать интимно с заказчиками (бывает разное, поверьте).
14. Вас будут постоянно просить сделать базы для спама. Каждый день мы получает 5-6 запросов на создание баз компаний, но каждый первый просит, чтобы в этой базе были личные контакты ЛПР (генерального, директора по маркетингу и т. п.). Решения нет, т. к. см. пункт выше про персональные данные.
15. Парсинг — это не rocket sience. Полно готовых библиотек, особенно для python и я уверен, что каждый может оказывать услуги парсинга в сегменте b2b. Что является вашим конкурентным преимуществом? Только известность и команда (я понимаю, что звучу как «капитан очевидность», но так и есть).
16. Язык программирования не важен. Добавить нечего. Клиента вообще не интересует, на чем вы программируете.
17. Не соглашайтесь на просьбы сделать «программку для парсинга». Парсинг — это услуга. Нас регулярно просят сделать «скрип, чтобы парсил на моем ПК». Отказываем. Причина? Ну думаю она и так понятна — замучают поддержкой, т. к. любой изменение разметки сайта и «скрипт» не работает.
18. Мобильные прокси — ваше «все». Добавить нечего. Советую иметь пару поставщиков.
19. Люди предпочитают писать заявки на парсинг с личных почтовых адресов. Объяснения этому у меня нет, просто примите как данность. Даже крупные, известные компании, заявки на парсинг часто пишут с личных адресов их сотрудников.
20. Поддержки очень много, поверьте. Нет, не так — ее просто «завались»! Половина команды работает над исправлением сбоев (изменилась разметка сайта — парсинг остановился), а половина — над подключением новых сайтов.
21. Cloudflare обходится. Тут добавить нечего. Скорость падает, это факт, но данные собираются. Да и qrator (ребята однозначно молодцы, защищают от ddos) тоже обходится.
22. Решение капчи — ваше «все». Сервисов полно, выбирайте любой на ваш вкус. Замедляет парсинг ощутимо и это как раз и приведет к тому, что части клиентов приходится отказывать в оказании услуги, ведь люди хотят парсить все и сразу :) — а так не получается.
24. Западные рынки? Не получилось. После выхода первых статей (ссылки выше), получил много предложений развивать парсинг на западных рынках (точнее глобальных — был Уругвай, Чили, Европа и т. п.). Не срослось и даже не могу внятно объяснить почему, просто факт. Полагаю, что для глобального развития нужен продукт, а парсинг — это услуга.
25. Будут клиенты на 500 сайтов и цена за каждый сайт падает. У нас есть клиент, для которого надо парсить ~450 сайтов в месяц. В месяц мы берем максимум 80 сайтов на подключение (не забывая про поддержку тех, которые уже подключили). Цена за сайт при таком количестве снижается до 2000 р. в месяц, а работы очень много.
На этом пока всё. Надеюсь, что было полезно и интересно. Больше информации вы можете найти в моем личном Телеграм- канале «Русский ИТ бизнес» — в нем пишу всю «изнанку», с чем сталкиваемся в процессе работы, без приукрашивания. Если что-то упустил — спрашивайте в комментариях, отвечу обязательно.
p.s. просили добавить пункт 26 - продажа результатов парсинга нескольким клиентам - спешу вас разочаровать - в 90% запросов парсинг уникален и не подлежит перепродаже. А как бы хотелось...
«Бизнес очень интересный, но наполнен нюансами»
Главный нюанс это то, что владельцы других сайтов считают тебя пидорасом, не так ли?😁
Не знаю 🤷♂️ мы не спрашиваем. Ну так то точно мы прикладываем усилия чтобы не вредить никому
тема дарасов тут объемная. С другой стороны если ты даешь данные, то сделай нормальное апи и продавай доступ к нему.
пускай считают) деньги не всегда пахнут
Всё верно, когда программисты пишут что язык программирования не важен и клиенту нужна лишь решённая задача - аж душу греет))
Сейчас придут люди и будут питоном махать ))
А так да, главное результат тут.
Опять этот пёс со своим парсингом
А я занимаюсь парсингом для удовольствия, на ZennoPoster, чтоб мозги не закисли - https://t.me/actualdb
когда идёт 23-ий год, а твоя компания называется xml-что-то
Шутка? Кому какая разница какое название если деньги поступают?
А я-то думаю, почему у леруа такой ущербный сайт... А оказывается, все силы бросили на защиту от парсинга. Парсинг считаю нищебродством, но в случае в леруа это тот случай, когда с водой выплеснули ребёнка.
А почему нельзя сделать селф-сервис для парсинга? И будет продукт
Разметка разная на сайтах
Я занимаюсь такой разработкой - неважно, что разметка разная, можно смотреть на визуальные признаки
Спасибо. Большой, информативный и полезны материал. А можно ещё по 18 пункту чуть подробней - почему именно мобилки, а не резидентные? Почему именно пару поставщиков? И собственно на что ориентироваться, чтобы подобрать сразу ок и не встрять при большом заказе?
Из опыта лучше моб прокси ! Уж не могу сказать почему :) ребята пробовали множество .
Как всегда на высоте)
Все по делу.
нужно только 26 пункт добавить, по возможности продавать результат не только одному клиенту.
щас добавлю. но к сожалению это не так :(
Интересная и доканчивая статья 👍
когда то было желание заняться таким, вот может по случаю есть причина пробнуть
благодарю, было полезно
Опередили прямо меня с пунктом 26. Как бы круто было один и тот же набор данных (ладно, в другой обертке) продавать нескольким клиентам
Было бы бомба 💣:)
Спасибо за статью, все написано по делу. Приведены интересные выводы, было полезно почитать.
Не понял только для чего у вас заказывают парсинг? С какой целью нужна данная услуга?
Анализ цен конкурентов - самое простое и популярное
Плюсую вопрос, тоже интересно, и тоже не могу придумать зачем
Расскажи, как обходишь Cloudfire защиту от парсинга? )
https://www.youtube.com/watch?v=Zd-x1I8FdYc
Вот да, тоже интересно. Выяснить rate limit и обойти - просто. Если это и есть "обход", то это не обход.
Вот если вы умеете без участия человека челленджи обходить...
Стоп, так компания убыточна? Почему??
Убыточна ?)) почему ? Прибыльна
А не пробовали для парсинга использовать какие-то nocode решения? К примеру n8n.io или nodul.ru использовать?
К примеру в nodul есть возможность использования http запросов и headless браузера в облаке, а в n8n есть http запросы тоже
Указание на абьюзоустойчивые bare metal сервера с безлимитным трафиком как бы намекает, чем закончатся эксперименты с румяными nocode-решениями))
Скорее всего, несопоставимый capacity.
сайт с прокси посоветуйте :D
Любые мобильные - надо пробовать каждый и выбирать которые подойдут вам для вашей задачи
Есть какие-то библиотеки на подобие этого модуля? Допустим для PHP и т. д.
Думаю полно это же fuzzy search
Интересно, ребят из oxylabs.io премией за Sustainability наградили. В детали не вдавался, но не гонят с-ми тряпками ))
Вроде как упаковывают в продукт.
У нас не получилось :(
А как все это работает?
Даётся условно х сайтов, какие товары парсить? А дальше заказчик получает табличку и все? Или это что-то умное?
Ну например один и тот же товар в разных магазинах с разным названием.
Да верно. Список сайтов и формат на выходе данных - все
Добрый день.
А вы можете немного рассказать про математику вашего бизнеса,? (как ведете управленческий учет, в какой системе, какими инструментами пользуетесь, чтобы анализировать ваш бизнес)?
Ексель :) ничего сложного
Не понятно почему. Скорее всего им нужны будут те же самые сайты которые вы и так парсите и вряд ли потребуются что-то еще
Матчинг товаров не получаетсяМатчинг не решается только алгоритмами. Здесь большое количество и ручных проверок должно быть (в том числе и для оценки точности). Но при этом автоматика может позволить ежедневно находить 500к+ новых матчей, в то время ручками это невозможно за более менее адекватные деньги. Тут вопрос есть ли клиенты для этого
А если сайт, видя в вас бота, не блокирует вас, а вместо этого подсовывает боту искаженные данные... Как это проверить?
Такое бывает крайне редко
Ничего не могу сказать по поводу сервиса по парсингу, но работал с другим проектом компании - сайтом clickfraud.ru который не работал от слова совсем. Уже писал один раз под каким-то вашим постом: Максим, так как вы работаете с Директом, то сделайте полноценный А/B тест, чтобы наконец показать, что ваш сервис clickfraud.ru работает.
150 клиентов опровергают ваши слова, мы развиваемся, активно улучшаем алгоритмы - но я же не навязываю вам наш сервис. Не понравилось - ради бога.
Комментарий удален модератором
А что значит матчинг товаров? Нужно найти одинаковые товары на сайтах разных аптек, условно? И не ищется, потому что слишком много разницы в том, как пишут названия? Неужели эту задачу до сих пор не решили на чистых алгоритмах, без нейросетей?
Точность плохая в итоге
Приветствую Максим, у меня есть клиенты, которым постоянно требуется Парсинг Ozon, можно я вам буду их передавать за процент?
Посоветуйте им маяк или mpstats
Пожалуйста ☺️ буду рад
Спасибо за статью, очень интересные выводы, но я не могу не задать вопросы так как сам долгое время занимался подобными вещами)
1. Это проектный бизнес. Я мечтаю о продуктовом бизнесе, где затраты, по мере роста клиентской базы, растут не так линейно.
Разве это не должно заставить искать опции, при которых вы оптимизируете процесс так, чтобы затраты росли не линейно? Ну вот переключим в область, например, аутсорса. Есть 5 программистов, каждый сидит на проекте. Берём новый проект, нужен ещё 1 программист. Логично? Вроде да, но при этом можем взять по часу у каждого, и тянуть ещё 6-й проект. Очень грубый пример, но всё же. Считаю, что это должно быть наоборот мотивацией и драйвером.
3. Аналитика никому особо не нужна.
Также натыкался на подобное, но думаю дело в том, что аналитика в каждом конктерном случае - очень конкретная и заказчик сам уже знает, что ему надо. Никто не будет платить лишнюю тысячу рублей за то, чтобы узнать, что товар покупался 10 раз, это скорее всего и так известно, соответственно, аналитика либо должна быть очень точная и дешёвая, либо вообще не нужна.
4. Матчинг товаров не получается.
Тут полностью согласен. На протяжении трёх лет пытался сделать даже не матчинг товаров, а просто названия спортивных команд. Тоже пришёл к выводу, что проще перебрать за 2 часа 500 названий, чем тыкать пальцем в небо. Разве что использовать неполные алгоритмы сравнений и допускать вероятность ошибок.
6. Невозможно парсить все сайта. Дело в том, что когда у вас стоят задачи на неделю вперед по текущим клиентам, которые платят — команда будет заниматься не исследовательской работой, а именно этими горящими задачами.
Не думали о том, что "недельный" клиент завтра уйдёт, а "исследовательский" останется на долгие года? Почему бы не нанять парочку, да тех же джунов, чтобы сидели и изучали, что к чему, за лоу прайс/опыт/дошираки?
8. Когда к вам приходит клиент и просит парсить, условно 450 сайтов (у нас есть такой), то отдел поддержки просто физически не сможет каждый день проверять содержимое всех CSV/XLS — файлов.
Ну опять же, странно звучит. Накиньте к стоимости определённый %, посадите ещё одного человека - зарабатывайте. В крайнем случае, выработайте системную методику выявления того, что нужно замечать. Звучит, как лень/нежелание.
16. Язык программирования не важен. Добавить нечего. Клиента вообще не интересует, на чем вы программируете.
С точки зрения клиента - да. С точки зрения разработки и поддержки - очень важно.
17. Не соглашайтесь на просьбы сделать «программку для парсинга». Парсинг — это услуга. Нас регулярно просят сделать «скрип, чтобы парсил на моем ПК». Отказываем. Причина? Ну думаю она и так понятна — замучают поддержкой, т. к. любой изменение разметки сайта и «скрипт» не работает.
Опять та же история. Почему бы не сделать так - вот наша основная услуга - парсинг, например, пакетный. Можем вам сделать программку за 25000 рублей, но условно завтра она перестанет работать. Кто-то да согласится, для вас - лёгкие деньги.
А у вас сколько сотрудников?)
Вопрос про прокси — сайт может отследить оригинальный айпишник?
Например, заходишь ты из РФ на Инстаграм через Dolpin Anty с американской непубличной проксей, а он тебе такой — попался, Гусь Хрустальный!
А знаете вы правы - иногда прокси сохраняют отригинальный адрес !
А сервисы типа Сравни.Ру или Едадила? Или это не парсинг?
Парсинг :) вовсю
А какие вы используете безлимитные хостинги, которые не реагируют на абузы? Можете привести пару примеров?
Как обходите основное ограничение по 1334 ГК РФ? В том плане, что вы же готовитесь к тому, что вам может прилететь иск о нарушении права изготовителя БД? Как строите свою позицию?
Мы парсим фактические данные, цена название - не уверен, что с этим моде быть проблема судебная
Из 25го пункта следует, что у вас около 60% выручки с одного клиента? Если так, то как-то не очень ситуация, для стабильности бизнеса.
я знаю... это есть небольшая проблема.