Как бесплатно за два часа спарсить каталог интернет-магазина и создать тысячи объявлений: пошаговая инструкция
На примере интернет-магазина нумизматики Monetnik покажем, как мы в adgasm.io создаём объявления под каждый товар без использования платных генераторов объявлений (например, К50 или Origami) и без привлечения технических специалистов к созданию фидов.
Нам понадобятся: import.io, Редактор Google Ads и Google Таблицы (или Excel). Засекаем время.
30 минут: извлекаем данные о товарах с сайта
1. Регистрируемся на import.io.
Для решения задачи будет достаточно бесплатной версии. Сервис преобразует информацию со страниц сайта в таблицу данных. Например, с его помощью можно собрать в табличном виде информацию о товарах интернет-магазина или следить за наличием товаров и ценами конкурентов. Для этого не потребуются ресурсы разработчиков и специальные знания: все, что нужно — задать адрес страницы и указать, какие данные нужны.
2. Показываем системе, какие данные нужно спарсить.
Допустим, мы хотим выгрузить из карточки товара на Monetnik.ru следующую информацию:
название монеты,
категория товара,
- цена,
- сохранность,
- год выпуска,
- номинал,
- материал.
Перейдем к инструменту «Extractors», нажмем «New Extractor» и введем URL страницы любого товара. После клика по кнопке «Go» начнется загрузка веб-страницы, и система попытается автоматически найти и извлечь данные.
Но автоматически сгенерированный результат нас не устраивает, Import.io извлек не те данные, что нам нужны. Перейдем на вкладку «Edit» и укажем, какие данные нужно собрать. Для начала удалим таблицу данных, собранную по умолчанию: выберем команду «Start over with empty table» и подтвердим действие «Yes, clear and start over».
Теперь можно настроить столбцы таблицы с нужными нам данными. Это делается так: даем название столбцу и кликаем на нужный элемент карточки товара. При наведения курсора мыши на любые элементы страницы, из которых можно извлечь данные, — текстовые блоки, изображения, ссылки, кнопки, — появляется зеленая иконка «+» рядом с курсором, а сами данные выделяются рамкой. Для создания новых столбцов выберем «Add column», аналогичным образом добавим нужны данные.
Чтобы оценить результат, после заполнения всех столбцов вернемся на вкладку «Data». Все отлично: мы получили таблицу с нужной информацией. Сохраним проект — кнопка «Extract data from website».
3. Выгружаем данные со всех страниц.
Это самое приятное: нам не придется вручную собирать данные со всех страниц товаров. На примере одной карточки товара мы показали системе, какую информацию необходимо собрать. Осталось задать адреса товаров, для которых Import.io аналогичным образом соберет данные.
Спарсить URL всех товаров можно на вкладке «Settings». Мы выбрали команду «Similar URLs» — Import.io определил 47 групп урлов. Адрес страницы товара имеет вид: https://www.monetnik.ru/monety/carskie/nikolaj-2/5-rublej-1898-ag-161562/ т.е. URL входит в группу https://www.monetnik.ru/monety/{any}/{any}/{any}/. Установим на него галочку в чекбоксе и нажмем «Add to list». Система нашла 17 446 адресов. В бесплатной версии Import.io можно обработать до 1 000 URL в месяц, поэтому мы сократим список. Выгрузим список адресов — кнопка «Download URLs» в Excel и оставим в файле только URL товаров из раздела «Монеты Николая 2-го (1894—1917)». Скопируем нужные адреса из файла Excel, а потом в Import.io с помощью «Remove all URLs» очистим лист и вставим скопированные данные. Можно еще удалить все ненужное в скачанном файле и загрузить его или вообще загрузить собственный готовый список, если он есть, — кнопка «Import URLs». После загрузки нажмите «Save». Адреса заданы, нажимаем «Run URLs» — система автоматически соберет данные по всем товарам аналогично первому.
После обработки всех страниц нажимаем «Preview Data», чтобы в режиме предпросмотра оценить результат. Если никаких изменений не требуется, то выгружаем данные в Excel — «Download Data». Если что-то не так, всегда можно вернуться к редактированию — «Edit».
В результате мы получили таблицу с нужными характеристиками монет, включая цену.
30 минут: создаем рекламную кампанию
1. Решаем, какой тип объявлений запускать: текстовые (классическая поисковая кампания) или динамические (DSA).
Попробуем ответить на этот вопрос на примере товара «1 пенни 1909, монета для Финляндии». Условия таргетинга в классических поисковых кампаниях — ключевые фразы. Попробуем их подобрать с помощью сервисов WordStat и Планировщик ключевых слов.
Один запрос найден в WordStat:
Планировщик Ads не показал статистику по этому запросу:
Дополним список ключевыми словами, сгенерированными с помощью генератора ключевых фраз (метод «сцепка»):
Как видно из скриншота, все фразы получили статус «Мало запросов», т.е. классическую поисковую кампанию мы запускать не можем — не получим показов.
Если семантика по большинству товаров получает статус «Мало запросов» или вы работаете с нишей, где постоянно появляются новые товары и семантики на момент запуска просто нет, то рекомендуем запустить динамические поисковые объявления. Вероятность получить показы по низкочастотной семантике здесь гораздо выше. В DSA вам не нужно собирать ключевые слова — условием таргетинга являются страницы сайта.
Для Monetnik.ru мы выбрали динамические поисковые кампании. Если вы решили запускать классический поиск, продолжайте читать статью — механика генерации объявлений для двух типов кампаний не будет отличаться.
2. Определяем страницы, на основе которых будут создаваться объявления.
При запуске DSA можно выбрать 3 варианта таргетинга:
- индекс сайта в Google (таргетинг на проиндексированные поисковыми роботами Google страницы сайта);
- только URL из фида страниц (таргетинг только на страницы из фида);
- URL из индекса сайта в Google и из фида страниц (комбинированный вариант).
Выбираем «Использовать только URL из фида страниц»: этот вариант позволит точнее настроить таргетинг и привлечь пользователей на максимально релевантные страницы — карточки товаров.
Создадим фид страниц — таблицу из 2 столбцов: Page URL (адрес страницы сайта) и Custom label (метка продавца). Метка продавца — это любые значения, которые используются для настройки таргетинга и ставок: например, название товара, категория товара и любые другие значения. Из Import.io мы выгрузили таблицу с данными, скопируем в отдельный файл два первых столбца («URL» и «Название монеты»), переименуем их в «Page URL» и «Custom label» и сохраним файл в формате .csv. Чтобы вам было проще — вот шаблон фида страниц.
В интерфейсе Google Ads перейдем на вкладку «Инструменты и настройки» — «Коммерческие данные» и создадим фид страниц. Выберем созданный файл и нажмем «Просмотр». Если будут обнаружены ошибки, исправьте их по комментариям Ads. Если ошибок не обнаружено, сохраните фид.
3. Создадим поисковую кампанию Google Ads.
В разделе «Настройка динамических поисковых объявлений» укажем домен сайта, выберем источник таргетинга «Использовать только URL из фида страниц» и созданный фид:
Создадим первую группу объявлений. Скопируем значение из столбца «Custom label» в фиде страниц и вставим это значение в название группы объявлений и метку продавца:
Теперь выгрузим кампанию в Редакторе Google Ads и массово создадим остальные группы через команду «Внести несколько изменений». Нужно добавить столбцы:
- кампания,
- группа объявлений,
- тип группы объявлений («Dynamic»).
Также через команду «Внести несколько изменений» добавим цели динамической рекламы через столбцы: Dynamic Ad Target Condition 1 и Dynamic Ad Target Value 1:
Нажмем «Обработать» — и готово: мы создали поисковую кампанию с динамическими группами объявлений и таргетингом на товарные карточки.
60 минут: создаем рекламные объявления
1. Создадим набор данных для модификаторов объявлений.
Модификаторы объявлений — это динамические данные, которые можно подставить в текст объявления в зависимости от условий таргетинга (рекламной кампании, группы объявлений, ключевого слова и др.). Подробнее о модификаторах объявлений в статье из Справки Google Ads.
Для модификаторов нам нужны атрибуты и условия таргетинга. Атрибутами являются любые данные, описывающие ваши товары и услуги. В нашем случае так:
Атрибуты
категория товара
цена
- сохранность
- год выпуска
- номинал
- материал
Условия таргетинга
кампания
группа объявления
Снова возвращаемся к таблице из Import.io. Значения столбцов форматируйте на свое усмотрение — меняйте регистр, склонение слов, сокращайте или дополняйте данные. Только не вздумайте делать это вручную, пользуйтесь возможностями табличных редакторов — Excel, Google Таблицы или гуглите онлайн-сервисы — склоняторы, конверторы регистров и другие.
Мы изменили регистр значений в столбце «Материал» (было «Серебро», стало — «серебро») и заменили значение «Монеты Николая 2-го (1894-1917)» в столбце «Категория товара» на «монет Николая II». Вот такая таблица у нас получилась — сохраняем ее .csv:
Не забывайте об ограничении на количество символов в описаниях: текст после подстановки данных не должен превышать 90 символов. Проверить количество символов можно в Excel или Google Таблицах — пропишите в отдельных столбцах статичный текст, а затем с помощью формул «СЦЕПИТЬ» объедините значения всех столбцов, а с помощью формулы «ДЛСТР» вычислите количество символов:
В интерфейсе Google Ads снова переходим в раздел «Коммерческие данные» и создаем данные модификаторов объявлений. Загружаем фид с модификаторами объявлений и нажимаем «Просмотр». Если форматы данных верные и ошибок не найдено, то выбираем «Применить».
2. Переходим в любую группу объявлений и создаем динамическое объявление.
При создании динамических объявлений заполняются только поля «Описание 1» и «Описание 2». Конечный и отображаемый URL, а также заголовок создаются системой автоматически на основе содержания сайта.
Ввод модификатора начинается с фигурной скобки. Модификатор имеет синтаксис вида {=Имя данных.Имя атрибута:текст по умолчанию}, где:
- имя данных — это название таблицы с данными (мы назвали фид «Монеты Николая 2»);
- имя атрибута — это название столбцов таблицы с данными (например, «Цена»);
- текст по умолчанию — например, {=Монеты Николая 2.Цена:от 1 руб}. Если при подстановке значения, заменяющего модификатор, текст превысит ограничения на количество символов, то подставится фраза по умолчанию «от 1 руб». При подстановке значения по умолчанию текст также не должен превышать 90 символов, иначе показов объявления не будет. Можно не вводить текст по умолчанию, но в таком случае в группу объявлений должно быть добавлено хотя бы одно объявление без модификаторов, иначе объявление показываться не будет.
Начинаем вводить статичный текст и добавлять модификаторы объявлений. Сразу в предпросмотре вы увидите будущее объявление — если все корректно, сохраните. Теперь просто скопируйте объявление в остальные группы с помощью редактора Ads. Вам не придется редактировать каждое объявление: в фиде модификаторов указаны условия таргетинга — кампания и группа объявлений, поэтому система сама понимает, какие значения из таблицы нужно подставить для каждой группы.
3. Оценим результат.
Группа «10 копеек 1907 СПБ ЭБ»:
Группа объявлений «50 копеек 1912 Э.Б»:
Результат
2 часа, 0 рублей, 1 000 уникальных текстов и посадочных страниц под каждый товар.
Авторы статьи: Ната Нефедьева, Мариам Оганесян
Мы завели телеграм-канал, пишем о контексте, присоединяйтесь :) http://t-do.ru/adgasm
Интересная статья. Надо попробовать )
очень круто, спасибо, надо брать))
в 2008 подобным образом запарсил Яндекс.Карты - все 36тыс. домов в мск, чтобы выявить многоофисные муравейники, расставить оборудование :)
Подскажите пожалуйста, при парсинге URL с помощью similar urls, попросту нету данной кнопки в списке как на ваших скриншотах. Вместо неё Generate Url
Как тогда спарсить похожие url?
Заранее спасибо
На вкладке «Run History» нужно дождаться полной загрузки данных, чтобы появилась зеленая галочка. После этого переходим на вкладку «Settings», и кнопка «Similar URLs» будет доступна.
Зеленая галочка есть, Similar URLs не появились
Федор, записали скринкаст этого этапа. Посмотрите, пожалуйста. Вы все так делаете?
К сожалению тоже не появляется кнопка Similar URLs. Делаю все как указан, повторил несколько раз. Подскажите в чем может быть проблема?
Разобрался в чем дело. Кнопка появляется только у тех сайтов у которых сервис нашел карту сайта. Т.е. он не парсит урлы, а просто берет их из карты. Очень жаль https://monosnap.com/file/hGKtyp4LvPCJcSVzHe0fvvlCRkoZu5
Как вариант, "сгенерировать" все ссылки можно самому через Screaming Frog (по фильтру) и скормить сервису на этапе где не появилась кнопка Similar URLs.
и у меня Similar URLs не появились, хотя зеленая галочка есть
Александр, приложили скринкаст выше. Вы делаете так, и все равно не появляется кнопка "Similar URLs"?
не появляется. Как-то странно, сервис за несколько секунд у вас нашел 70к+ страниц. Возможно, эта кнопка появляется у вас, так как сервис уже в базе имеет данные о ваших страницах? Ну для себя я спарсил страницы сервисом Screaming Frog и загрузил. На import.io очень понравилась функция, которая позволяет парсер обучать распознавать элементы на нескольких однотипных страницах, это помогает, когда одни и те же элементы в стилях имеют разные id и трудно вычислить шаблоны XPath
Комментарий недоступен
Спасибо за статью.
В случаях, когда программист занят или отсутствует вовсе - наверное, такая схема имеет место быть.
Но всё же, куда проще выгрузить эти данные из БД. И никаких лимитов (в большинстве случаев), да и даже без специальных знаний - научиться выгружать будет куда полезнее, чем разбираться в ворохе сервисов.
А про 1000 посадочных в конце - так они и были уже на сайте до старта работ, разве нет?)
Вы правы, если программист поможет, то задача облегчается. Хотели показать неочевидный способ сбор данных, если программисты загружены. Также, думаем, пункт о создании объявлений с модификаторами тоже кому-нибудь пригодится)
Парсить можно не только свои сайты, но и конкурентов. Например, изучить цены на аналогичные товары и их наличие, чтобы понять, где стоит усилить рекламу.
А сколько занимает порсинг например 1000 страниц? По времени. Спасибо.
Андрей, парсинг 1000 страниц в данном кейсе занял 18 минут. Время проработки зависит от количества URL и объема данных, которые нужно извлечь.
Спасибо за ответ!
как зарегистрироваться на сайте adgasm.io ?
ни ссылки, ни формы, ни кнопок регистрации просто нет
Вы имеете в виду import.io?
Adgsam.io — сайт нашего агентства. Там регистрироваться не нужно :)
а, сорри... охрана, отмена
Коллеги, как в данном случае поддерживается актуальность цен и наличия в объявлениях?
Павел, спасибо за хороший вопрос.
Поддерживать актуальность источника данных можно через расписания в Import.io (команда "Schedule to run") и данных модификаторов объявлений — через расписания в коммерческих данных Ads.
Когда цены/наличие товаров обновляются часто и вариант с префиксом "от... руб." не подходит, то лучше использовать генераторы объявлений. Если же такой проблемы нет — то можно обойтись без платных инструментов.
Хороший инструмент для аналитики. Спасибо!
Спасибо! Классный инструмент, понравилась статья.
У вас в объявлении помарка: в одном месте написано, что 3700 отзывов, во втором — 1432 отзыва.
И какие получились показатели? CTR, конверсии? Реклама окупилась на горизонте неделя-месяц?
Как поступали в случае с gtin? или с монетами этот параметр не нужен?
@Kirill Khatkevich , мы запускали DSA (динамические поисковые кампании), параметр gtin для такого типа кампаний не требуется.
понял, спасибо!
Парсю сайты с помощью Datacol - обращайтесь.
Telegram: @karpekinn
Кто писал эту статью: мастер своего дела или блогер теоретик, диванный специалист? Хотелось бы узнать и исходя из этого принять решение по своему сайту. Самому заниматься всем вышеописанным -это тоже самое, что медведя научить танцам. Мне нужен специалист, который мог бы заняться моим сайтом тем, что написано выше. Мой емайл: [email protected]
Написали на почту