import argparse
import json
from shangan.question_client import fetch_question

def main():
    parser = argparse.ArgumentParser(description="刷考公题神器")
    parser.add_argument('-url', type=str, default='http://154.64.252.52:8080', help='后端服务根地址，例如：http://www.example.com:port')
    parser.add_argument('-show-url', action='store_true')    
    args = parser.parse_args()

    base_url = args.url.rstrip('/')
    if args.show_url:
        print(f"🌐 当前使用接口：{base_url}")
        return

    print("📚 欢迎来到『上岸神器』，开始刷考公题吧！（Ctrl+C退出）")

    while True:
        input("\n>>> 回车出题 <<<")
        data = fetch_question(base_url)
        if not data:
            print("❌ 获取题目失败，请稍后再试。")
            continue

        print("\n📖 题目：", data["questionText"])
        try:
            options = json.loads(data["options"])
        except json.JSONDecodeError:
            print("选项解析失败：", data["options"])
            continue

        for key, val in options.items():
            print(f"{key}. {val}")

        user_ans = input("\n✍️ 你的答案：").strip().upper()
        if user_ans == data["correctAnswer"].strip().upper():
            print("✅ 回答正确！干得漂亮！\n")
        else:
            print(f"❌ 错了，正确答案是：{data['correctAnswer']}\n")