Shopify API를 이용한 상점 관리 자동화

Shopify 상점을 효율적으로 관리하고 자동화하기 위한 두 가지 방법을 소개합니다. Python을 이용해 ShopifyAPI 라이브러리와 requests 라이브러리를 활용하여 상품 정보를 조회하고, 주문을 생성하는 방법을 배우세요. 이 튜토리얼은 개발자가 API를 통해 Shopify의 기능을 최대한 활용할 수 있도록 도와줍니다.
Shopify API를 이용한 상점 관리 자동화
Photo by Roberto Cortese / Unsplash

On this page

Shopify 상점을 운영하는 데 있어 자동화는 시간을 절약하고 효율성을 높이는 데 큰 도움이 됩니다. Python을 이용하여 Shopify API로 상점 데이터를 관리하고 자동화하는 두 가지 방법을 소개합니다.

방법 1: ShopifyAPI 라이브러리 사용하기

ShopifyAPI 라이브러리는 Shopify와의 API 통신을 위한 Python 인터페이스를 제공합니다. 이 방법은 Shopify API와의 통신을 간소화합니다.

1. 라이브러리 설치

먼저, Python 환경에 ShopifyAPI 라이브러리를 설치합니다.

pip install ShopifyAPI

2. API 인증

Shopify 상점과 API 키를 사용하여 세션을 생성하고 인증합니다.

from shopify import Session, ShopifyResource

shop_url = "your-shop-name.myshopify.com"
api_version = "2023-01"
private_app_api_key = "your_api_key"
private_app_password = "your_api_password"

session = Session(shop_url, api_version, private_app_api_key, private_app_password)
ShopifyResource.activate_session(session)

3. 상품 목록 가져오기

상점에서 상품 목록을 조회합니다.

import shopify

products = shopify.Product.find()
for product in products:
    print(product.title)

4. 세션 종료

작업을 마친 후 API 세션을 종료합니다.

ShopifyResource.clear_session()

방법 2: requests 라이브러리 사용하기

requests 라이브러리를 사용하여 직접 HTTP 요청을 보내는 방법입니다. 이 방법은 더 세밀한 API 제어가 가능합니다.

1. requests 라이브러리 설치

필요한 라이브러리를 설치합니다.

pip install requests

2. API 인증

기본 인증을 사용하여 API 요청을 준비합니다.

import requests

api_key = "your_api_key"
password = "your_api_password"
shop_url = "your-shop-name.myshopify.com"
api_version = "2023-01"
base_url = f"https://{api_key}:{password}@{shop_url}/admin/api/{api_version}/"

3. 상품 목록 가져오기

GET 요청을 사용하여 상품 목록을 조회합니다.

response = requests.get(f"{base_url}products.json")
products = response.json()
for product in products['products']:
    print(product['title'])

4. 주문 생성

새로운 주문을 POST 요청으로 생성합니다.

order_data = {
    "order": {
        "email": "example@example.com",
        "line_items": [
            {
                "variant_id": 1234567890,
                "quantity": 1
            }
        ]
    }
}

response = requests.post(f"{base_url}orders.json", json=order_data)
if response.status_code == 201:
    print("Order created successfully!")
else:
    print("Failed to create order:", response.status_code)

결론

Shopify API를 사용하는 두 가지 방법은 각각의 장단점이 있습니다. ShopifyAPI 라이브러리는 사용이 간편하지만, requests 라이브러리를 사용하면 더 세밀한 제어가 가능합니다. 상황에 따라 적절한 방법을 선택하여 사용하세요!

Subscribe to Keun's Story newsletter and stay updated.

Don't miss anything. Get all the latest posts delivered straight to your inbox. It's free!
Great! Check your inbox and click the link to confirm your subscription.
Error! Please enter a valid email address!