# shopify_store_builder.py — Agent全自动建站 v1.0
# pip install shopify requests
import shopify, json, os
# ═══ Config ═══
API_KEY = os.environ["SHOPIFY_API_KEY"]
PASSWORD = os.environ["SHOPIFY_ADMIN_TOKEN"]
def setup_store(domain, store_name):
"""Step 1: 创建Shopify店铺(通过Partner API)"""
# 使用 Shopify Partner API 创建开发店铺
resp = requests.post(
"https://partners.shopify.com/api/2025-04/stores",
headers={"X-Shopify-Access-Token": PASSWORD},
json={"store": {"name": store_name, "domain": domain}})
return resp.json()["store"]
def add_products(session, products: list):
"""Step 2: 批量添加产品"""
shopify.ShopifyResource.activate_session(session)
for p in products:
shopify.Product.create({
"title": p["title"],
"body_html": p["description"],
"variants": [{"price": p["price"]}],
"images": [{"src": img} for img in p["images"]]
})
return True
def setup_payments(session, methods=["stripe","paypal"]):
"""Step 3: 配置支付"""
for m in methods:
shopify.GraphQL().execute("""mutation{{ paymentCreate(name:"{m}") }}")
def configure_markets(session, countries):
"""Step 4: 多市场配置(语言+货币+域名)"""
for c in countries:
shopify.GraphQL().execute(f"""mutation{{marketCreate(country:"{c}")}}")
def deploy(domain, name, products, markets):
"""一键部署完整独立站"""
store = setup_store(domain, name)
session = shopify.Session(f"{domain}.myshopify.com", "2025-04", PASSWORD)
add_products(session, products)
setup_payments(session)
configure_markets(session, markets)
return {"url": f"https://{domain}", "admin": store["admin_url"]}
# ═══ 执行 ═══
products = json.load(open("products.json"))
result = deploy("mystore.com", "My Store", products, ["US","DE","JP"])
print(f"✅ 店铺上线: {result['url']}")