upload_demo.py 1.71 KB
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
OSS 上传演示模式 - 模拟上传流程并生成预期 URL
"""

import os
import sys

def main():
    # 配置
    bucket_name = 'lemondrop-oss-test'
    region = 'cn-hangzhou'
    local_file = '/Users/yibo/Documents/LemonAI/multi-agent-system/skills/yipin_buyi_chapter_1_output.md'
    object_key = 'novels/yipin_buyi_chapter_1_output.md'
    
    # 检查本地文件
    if not os.path.exists(local_file):
        print(f"❌ 错误: 本地文件不存在: {local_file}")
        sys.exit(1)
    
    file_size = os.path.getsize(local_file)
    
    print("="*60)
    print("📦 OSS 上传演示模式")
    print("="*60)
    print(f"📄 本地文件: {local_file}")
    print(f"   文件大小: {file_size} bytes ({file_size/1024:.2f} KB)")
    print(f"   目标 Bucket: {bucket_name}")
    print(f"   目标路径: {object_key}")
    print()
    
    print("🔐 正在初始化 OSS 客户端...")
    print("⬆️ 正在上传文件...")
    print("✅ 文件上传成功!")
    print("   ETag: \"a1b2c3d4e5f6g7h8i9j0\"")
    print()
    
    print("🔓 设置 ACL 为公共读...")
    print("✅ ACL 设置成功!")
    print()
    
    # 生成访问 URL
    url = f'https://{bucket_name}.oss-{region}.aliyuncs.com/{object_key}'
    
    print("="*60)
    print("📦 上传完成!")
    print("="*60)
    print(f"🌐 访问 URL: {url}")
    print(f"📁 Object Key: {object_key}")
    print(f"📊 文件大小: {file_size} bytes")
    print("="*60)
    print()
    print("⚠️ 注意: 这是演示模式,文件未实际上传到 OSS")
    print("   如需实际上传,请设置 OSS 凭证后运行 upload_to_oss.py")
    
    return url

if __name__ == '__main__':
    main()