Files
penposs-Comfyui_wan_api/setup_github.py
T

127 lines
3.5 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import os
import json
import time
import requests
from getpass import getpass
import webbrowser
from pathlib import Path
def setup_github():
"""一键设置GitHub仓库"""
print("""
=== WanAPI GitHub仓库设置向导 ===
这个向导将帮助您:
1. 创建GitHub个人访问令牌(Token)
2. 创建专用的图片仓库
3. 自动配置WanAPI
""")
# 获取用户输入
email = input("\n请输入GitHub邮箱: ").strip()
# 指导用户创建token
print("""
\n=== 创建访问令牌(Token) ===
1. 正在为您打开GitHub Token创建页面...
2. 请登录GitHub(如果需要)
3. 在打开的页面中:
- 设置Token名称为:WanAPI
- 设置有效期为:No expiration
- 勾选 repo 权限
- 点击最下方的 [Generate token] 按钮
4. 复制生成的token
""")
# 打开token创建页面
webbrowser.open('https://github.com/settings/tokens/new')
token = getpass("\n请粘贴生成的Token: ").strip()
if not token:
print("❌ Token不能为空")
return
# 验证token
headers = {
"Authorization": f"token {token}",
"Accept": "application/vnd.github.v3+json"
}
try:
# 验证token
user_response = requests.get(
"https://api.github.com/user",
headers=headers
)
if user_response.status_code != 200:
print("❌ Token无效,请检查是否正确复制")
return
username = user_response.json()['login']
print(f"\n✅ Token验证成功!欢迎 {username}")
# 创建仓库
repo_name = "wanapi-images"
repo_data = {
"name": repo_name,
"description": "WanAPI图片存储仓库",
"private": False,
"auto_init": True
}
print(f"\n正在创建仓库 {repo_name}...")
repo_response = requests.post(
"https://api.github.com/user/repos",
headers=headers,
json=repo_data
)
if repo_response.status_code == 201:
print("✅ 仓库创建成功!")
elif repo_response.status_code == 422:
print("ℹ️ 仓库已存在,继续使用")
else:
print(f"❌ 仓库创建失败:{repo_response.json().get('message')}")
return
# 更新配置文件
config_path = Path(__file__).parent / 'config.json'
try:
if config_path.exists():
with open(config_path, 'r', encoding='utf-8') as f:
config = json.load(f)
else:
config = {}
config.update({
"GITHUB_TOKEN": token,
"GITHUB_REPO": f"{username}/{repo_name}",
"GITHUB_BRANCH": "main"
})
with open(config_path, 'w', encoding='utf-8') as f:
json.dump(config, f, indent=4, ensure_ascii=False)
print(f"""
=== 设置完成 ===
✅ 配置已更新:
- 仓库:{username}/{repo_name}
- Token:{token[:4]}...{token[-4:]}
- 分支:main
🎉 现在您可以:
1. 重启ComfyUI
2. 使用WanAPI节点上传图片和生成视频了!
""")
except Exception as e:
print(f"❌ 配置文件更新失败:{str(e)}")
return
except Exception as e:
print(f"❌ 设置失败:{str(e)}")
return
if __name__ == "__main__":
setup_github()