CoderCastrov logo
CoderCastrov
Технология

Как извлечь данные из магазина Shopify в Google Sheets?

Как извлечь данные из магазина Shopify в Google Sheets?
просмотров
5 мин чтение
#Технология

Если вы хотите извлечь данные из магазина Shopify, такие как цены на товары, отзывы и другие данные, вы можете сделать это с помощью формулы IMPORTXML в Google Sheets. Это очень просто и не требует никаких знаний программирования. Однако, если вы хотите собрать все данные о продуктах в большом масштабе, вы можете столкнуться с ограничениями инструмента, что делает невозможным выполнение задачи.

В этом блоге мы рассмотрим все возможности и ограничения извлечения данных из магазинов Shopify и других электронных коммерческих платформ с использованием функциональности Google Sheets. Кроме того, мы рассмотрим другие решения, которые помогут вам получить полные данные о продуктах для всех ваших конкретных бизнес-задач.

Использование формулы IMPORTXML в Google Sheets

Немного теории о функциях IMPORTXML из Центра помощи Google: "IMPORTXML позволяет получать данные из различных типов структурированных данных, таких как HTML, CSV, XML, TSV, RSS, а также ATOM XML-ленты". Пример использования:

IMPORTXML("https://ru.wikipedia.org/wiki/Покорение_Космоса", "//a/@href")
IMPORTXML(A2,B2)

Процедура IMPORTXML состоит из двух аргументов:

URL-адрес веб-страницы, с которой вы планируете извлекать данные.

XPath элемента, в котором находятся данные.

XPath означает Язык пути XML и может использоваться для навигации по атрибутам и элементам в XML-документе. Далее в блоге мы покажем, как определить XPath элемента страницы (название продукта, описание, цена и т. д.)

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

Шаги для парсинга данных магазина Shopify в Google Sheets

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

Давайте начнем с получения названия товара:

  1. Создайте Google Sheets.

  2. Добавьте названия столбцов и вставьте URL.

  1. Получите XPath для названия товара. Для этого выберите название и щелкните правой кнопкой мыши, чтобы вызвать меню, затем выберите "Инспектировать":

В инструменте разработчика Chrome вы увидите выделенный текст с использованием тегов. Щелкните правой кнопкой мыши и в меню выберите опцию "Копировать" > "Копировать XPath":

Вставьте его в соответствующую ячейку:

  1. Затем примените формулу =IMPORTXML (URL, XPath_query) и нажмите Enter.

*Выберите соответствующие ячейки для XPath_query и URL. В этом примере это ячейка A2 для URL и ячейка B2 для XPath:

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

Почему возникает проблема "Импортированный контент пустой"?

Всякий раз, когда мы пытаемся получить URL изображений аналогичным образом, мы сталкиваемся с проблемой "Импортированный контент пустой" (это также может быть "введенный XML-контент не может быть обработан"):

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

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

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

Ограничения функций IMPORTXML

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

Google Sheets, а также другие статические парсеры, могут извлекать страницы, если контент отображается при первом запросе страницы и не генерируется динамически.

Некоторые другие ограничения, с которыми вы можете столкнуться, включают:

  • Не так легко распознать и исправить запрос XPath.
  • Функции IMPORTXML и Sheets не могут использоваться для извлечения больших объемов данных в масштабе (это приведет к сбою).
  • Импорт формул не может работать с данными, защищенными паролем.
  • Если вы планируете импортировать извлеченные данные в интернет-магазин, может потребоваться время на очистку данных и подготовку правильной структуры файлов для импорта.

Альтернативный способ извлечения данных из Shopify и других электронных коммерческих сайтов в Google Sheets

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

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

Вот что вы получите:

  • Извлечение необходимых данных (указывайте поля, которые вы хотите получить в результирующей таблице Google Sheets или в шаблонах файлов).
  • Извлечение всех данных, включая динамические элементы: множество изображений товаров, вариации товаров, страницы с пагинацией и т. д.
  • Извлечение данных с защищенных паролем сайтов (при условии предоставления данных для входа).
  • Очищенные данные в готовом для импорта формате. Вы можете заказать файл для импорта в WooCommerce, PrestaShop, Shopify, Magento и другие торговые платформы и системы управления предприятием (ERP). Просто укажите формат, и мы предоставим извлеченные данные в соответствии с ним.

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

Вот аналогичные данные, отформатированные для импорта в Shopify. В файле мы добавили столбцы из шаблонов импорта Shopify и заполнили их извлеченными данными. Описания продуктов содержат необходимые HTML-теги:

Свяжитесь с Retailgators прямо сейчас! Отправьте свой запрос с использованием предоставленной онлайн-формы заказа и легко получите все данные, извлеченные в Google Sheets!