代码拉取完成,页面将自动刷新
#!/usr/bin/env python3
# -*- encoding:utf-8 -*-
import argparse
import json
import os
import threading
import time
from collections import OrderedDict
from account import Accounts, Account
from api import app, globalObject, account_login_with_access_token, account_login_with_session_token
def load_config(config: dict, cache_path: str) -> Accounts:
accounts = Accounts(cache_path)
accounts.load(config)
return accounts
def run(host: str, port: int, dist: str, config: str, cache: str):
from waitress import serve
app._static_folder = os.path.abspath(dist)
with open(config, 'rb') as f:
config_obj = json.load(f)
accounts = load_config(config_obj, cache)
globalObject.cache_path = cache
globalObject.config_path = config
globalObject.accounts = accounts
for account_id in accounts.accounts:
account = accounts.accounts[account_id]
try:
account.load_session(os.path.join(cache, account.id + ".json"))
except FileNotFoundError:
pass
os.makedirs(cache, 0o755, True)
for account_id in accounts.accounts:
globalObject.default_account = accounts.accounts[account_id]
break
serve(app, host=host, port=port, threads=256)
def main() -> int:
home_path = os.getenv("HOME")
parser = argparse.ArgumentParser(description="chatgpt web")
parser.add_argument('--dist', '-d', type=str, help='ui dist path', default='./ui/dist')
parser.add_argument('--host', '-o', type=str, help='host', default="127.0.0.1")
parser.add_argument('--port', '-p', type=int, help='port', default=9987)
parser.add_argument('--config', '-c', type=str, help='revChatGPT config.json',
default=os.path.join(home_path, ".config", "revChatGPT", "web.json"))
parser.add_argument('--cache', '-e', type=str, help='cache directory',
default=os.path.join(home_path, ".cache", "revChatGPT"))
args = parser.parse_args()
run(args.host, args.port, args.dist, args.config, args.cache)
return 0
if __name__ == "__main__":
exit(main())
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。