AdsPower
AdsPower

Руководство по парсингу Shopify: Два способа: с кодом и без кода

By AdsPower
861 Views

С более чем 4,8 миллионами магазинов, Shopify является ведущей платформой электронной коммерции. В последние годы доходы Shopify побили все предыдущие рекорды, превысив 7,06 миллиарда долларов в год, согласно финансовым результатам Shopify за 2023 год.

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

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

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

Давайте посмотрим, как вы можете использовать данные Shopify в своих интересах.

Можете ли вы парсить Shopify?

Согласно Условиям предоставления услуг Shopify, "вы соглашаетесь не получать доступ к Услугам и не отслеживать любые материалы или информацию из Услуг с помощью роботов, пауков, парсинга или других автоматизированных средств".

Этот пункт находится в разделе "Условия учетной записи", и все пользователи Shopify соглашаются с ним во время создания аккаунта.

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

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

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

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

Ну а как же тогда парсить Shopify? Не волнуйтесь. Эти ограничения касаются парсинга частных данных. Вы всё ещё можете запустить парсинг Shopify на сайте.

Убедитесь, что вы парсите только общедоступные данные. Вы также не должны использовать экспорт данных Shopify для дублирования, так как он может быть удален, как
в данном случае.

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

Парсинг Shopify: Два разных способа

На этой ноте давайте перейдем к технике парсинга Shopify.

Парсинг Shopify без кода

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

Среди этих инструментов лидерами рынка являются ParseHub, Shopify Scraper от Apify и Shopify Product Scracing.

В этом руководстве мы расскажем вам о создании парсинга Shopify Product с помощью ParseHub. Давайте начнем.

Шаг#1: Загрузите и создайте аккаунт

Перейдите на сайт ParseHub, загрузите установочный файл для вашей операционной системы и установите программу.

Откройте ParseHub, заполните форму регистрации, указав своё имя, адрес электронной почты и надёжный пароль, а затем нажмите кнопку "Регистрация".

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Шаг#2: Начните новый проект

После входа в систему, вы увидите кнопку с надписью New Project (Новый проект). Нажмите на неё.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

В следующем окне вставьте URL-адрес магазина Shopify, который вы хотите парсить, в соответствующую строку.

В этой демонстрации мы будем парсить
этот магазин.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Вставив ссылку на целевую страницу магазина, затем нажмите кнопку в нижней части панели.

Эта страница загрузится в правой части экрана.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

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

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Назовите его подходящим именем, например shopify_products.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Шаг# 3: Начните выбирать элементы для парсинга

ParseHub позволяет вам нажимать на элементы, которые вы хотите парсить (например, названия продуктов, цены, рейтинги), и запоминать выбранные вами варианты.

Раз уж мы создаем парсинг для продуктов Shopify, начните с названия продукта: оно станет зеленым, а остальные - желтыми.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Выберите другое название продукта, чтобы все они стали зелёными.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Вы увидите таблицу предварительного просмотра с названиями продуктов и URL-адресами.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Шаг# 4: Переименовать выборку

Назовите свою выборку соответствующим образом. Поскольку мы извлекаем URL-адреса и названия продуктов, мы назвали нашу выборку "продукт".

Лучше всего переименовать все выборки проекта соответствующим образом.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Шаг# 5: Начните проект

Повторите шаги 3 и 4 для других элементов, которые вы хотите парсить. Поскольку нам нужны только название товара и URL, наш рабочий процесс парсинга Shopify выглядит следующим образом.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Чтобы запустить наш парсинг продуктов Shopify, просто нажмите кнопку "Получить данные" и выберите "Запустить" в следующем окне.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Это займет некоторое время, в зависимости от количества данных.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Вот и всё! Теперь просто выберите удобный путь загрузки.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Например, мы сохранили наш файл в формате Shopify_products.json.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Создайте парсинг Shopify с помощью Python

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

Это объясняет, почему для сложных задач парсинга вам придется кодировать Shopify Scraper. Программирование скриптов даёт вам свободу устанавливать собственные ограничения в соответствии с вашими потребностями. Он может парсить любые данные на странице. Вам просто надо будет написать для него программу.

А на каком языке лучше парсить, чем на Python? У него простой и понятный синтаксис и большая библиотека полезных пакетов.

Магазины Shopify обладают уникальной особенностью, благодаря которой парсить их очень легко. Все магазины Shopify имеют файл product.json, который находится в открытом доступе. Этот файл содержит данные обо всем ассортименте магазина. В нем есть название каждого товара, его уникальный идентификатор, цена, продавец, описание и множество других данных.

Чтобы получить доступ к этому файлу Shopify product.json, вам нужно всего лишь поместить 'products.json' в конец корневого URL-адреса магазина, т.е.
https://helmboots.com/products.json.

Руководство по парсингу Shopify: Два способа: с кодом и без кода

Если вы хотите создать парсинг для продуктов Shopify, этот файл Shopify products.json избавит вас от тяжелой работы.

Теперь просто нужно заставить ваш веб-парсинг Shopify отправить один запрос к этому файлу и извлечь все необходимые данные.

Итак, давайте начнем программировать наш парсинг Shopify на Python.

Шаг# 1: Импорт основных библиотек

Создайте файл python, например python_shopify.py, и импортируйте пакеты. Нам понадобятся следующие библиотеки:

  • Json

  • Requests

  • Pandas

import json
import pandas as pd
import requests

Шаг# 2: Получите файл products.json магазина

Мы создадим функцию fetch_json, которая будет принимать URL сайта и номер страницы в качестве аргумента и возвращать файл product.json магазина. Мы установили ограничение в 30 товаров на страницу.

Наша функция также будет содержать обработку исключений для некоторых ошибок.

def fetch_json(url, page):

try:
response = requests.get(f'{url}/products.json?limit=30&page={page}', timeout=5)
products_json = response.text
response.raise_for_status()
return products_json

except requests.exceptions.HTTPError as error_http:
print("HTTP Error:", error_http)

except requests.exceptions.ConnectionError as error_connection:
print("Connection Error:", error_connection)

except requests.exceptions.Timeout as error_timeout:
print("Timeout Error:", error_timeout)

except requests.exceptions.RequestException as error:
print("Error: ", error)

Шаг# 3: Создайте датафрейм Pandas с помощью файла products.json

Наша функция принимает на вход файл products.json и преобразует его в датафрейм Pandas.

def make_df(products_json):

try:
products_dict = json.loads(products_json)
df = pd.DataFrame.from_dict(products_dict['products'])
return df
except Exception as e:
print(e)

Шаг# 4: Получите данные со всех страниц

Чтобы парсить все продукты, нам придется пройти по всем последующим страницам.

Для этого наша функция будет принимать на вход URL сайта и возвращать датафрейм Pandas, содержащий все данные о товарах магазина Shopify.

def get_all_products(url):

results = True
page = 1
df = pd.DataFrame()

while results:
products_json = fetch_json(url, page)
products_dict = make_df(products_json)

if len(products_dict) == 0:
break
else:
df = pd.concat([df, products_dict], ignore_index=True)
page += 1

df['url'] = f"{url}/products/" + df['handle']
return df

Наш парсинг Shopify на Python готов.

Просто передайте URL-адрес магазина в эту функцию, и все данные будут сохранены в переменной product.

Вы также можете просмотреть данные с помощью функции products.head().

all_products = get_all_products('https://helmboots.com/')
all_products.head(1).T

Помимо этого метода, вы также можете использовать Shopify Python API для экспорта данных Shopify.

Сделайте парсинг Shopify незаметным

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

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

AdsPower

Лучший браузер с несколькими входами для любой отрасли

Руководство по парсингу Shopify: Два способа: с кодом и без кода