#!/usr/bin/env python3 """ SEO Stub Generator - Phiên bản đơn giản cho Static Space Tạo file HTML stub cho mỗi sản phẩm để xử lý URL /san-pham/{slug}/ CÁCH CHẠY: 1. Trên UI Space: Settings → Build → Trigger Rebuild (Build sẽ tự động chạy build.sh → python3 app/run_seo_generation.py) 2. Hoặc manually: python3 app/run_seo_generation.py YÊU CẦU: - huggingface_hub (được cài trong build.sh) """ import json import re import unicodedata import urllib.request try: from huggingface_hub import HfApi except ImportError: import subprocess subprocess.run(["pip", "install", "huggingface_hub", "-q"]) from huggingface_hub import HfApi SPACE_ID = "bep40/V.AISTUDIO" BASE_URL = "https://bep40-v-aistudio.static.hf.space" def slugify(name): s = unicodedata.normalize('NFKD', name or '').lower() s = re.sub(r'[^a-z0-9]+', '-', s).strip('-') return s or str(hash(name) % 100000) def create_stub(p): slug = p.get('slug') or slugify(p.get('name', 'product')) name = str(p.get('name', 'Product'))[:200] brand = str(p.get('brand', '')) img = p.get('image') or f"{BASE_URL}/logo/logo_600.png" desc = re.sub(r'<[^>]+>', '', str(p.get('description', '')))[:160] title = f"{name} | {brand} - V.AISTUDIO" if brand else f"{name} - V.AISTUDIO" return f'''