占星骰子API文档

接口说明

本接口用于随机生成占星骰子结果,每次返回宫位、星座、行星三组数据及其对应的详细解读语料。占星骰子是占卜师常用的快速占卜工具,通过三颗骰子的组合来解读问题的答案。语料数据支持灵活查询和管理。

基本信息

参数 值
Base URL https://chart.12sign.top
接口URL /dice
请求方式 GET / POST

请求参数

本接口无需传递任何请求参数,直接调用即可返回随机骰子结果。

返回参数

返回包含 house(宫位)、constellation(星座)、planet(行星)三个对象,每个对象包含以下字段:

参数名 类型 说明
id integer 骰子ID,0-11
name string 中文名称,如"第一宫"、"白羊座"、"太阳"等
keyword string 关键字行,总结该骰子的核心特征
description string 主体描述文本
sub_items array 结构化子项数组,每项为"标题:内容"格式,如"子女:子女的教育..."
raw_content array 原始描述文本按行拆分的数组

返回示例

{
  "house": {
    "id": 4,
    "name": "第五宫",
    "keyword": "五宫关键字:孩子,创造力,艺术,玩耍,自我表达,爱好,赌博,恋爱",
    "description": "是生活里关于你创造力的部分。涉及游戏、爱好、娱乐...",
    "sub_items": [
      "子女:子女的教育,或者和子女相关的事物,怀孕等。",
      "娱乐:休闲娱乐,有趣的体验...",
      "收藏:古董,字画,玉器等的收藏。",
      "赌博:靠运气赢得胜利或利益的事情。",
      "爱情:激情,心动,浪漫,甜蜜的爱情。",
      "偶然事物:局面的不确定性,偶然的差池..."
    ],
    "raw_content": [
      "是生活里关于你创造力的部分。涉及游戏、爱好、娱乐..."
    ]
  },
  "constellation": {
    "id": 2,
    "name": "双子座",
    "keyword": "关键字:博而不专的人(万金油)/ 同时进行很多事 / 有时善变...",
    "description": "轻松、健谈风格。它多才多艺,善变、不闲着...",
    "sub_items": [],
    "raw_content": ["轻松、健谈风格..."]
  },
  "planet": {
    "id": 0,
    "name": "太阳",
    "keyword": "",
    "description": "太阳+星座=揭示了生命力的要素...",
    "sub_items": [
      "本质:生命力,个体意识,创造性,推动力...",
      "推动力:去生存,去创造",
      "需求:需要被认可,需要表达自我的独特性。",
      "占卜中的应用:",
      "寻物:比较显眼的(见光的)...",
      "事业:有推动力的,表现突出或者荣耀...",
      "感情:如阿波罗一般才华出众..."
    ],
    "raw_content": ["太阳+星座=揭示了生命力的要素..."]
  }
}

骰子ID对照表

宫位 (0-11)

ID名称
0-11第一宫 ~ 第十二宫

星座 (0-11)

ID名称
0-11白羊座 ~ 双鱼座

行星 (0-11)

ID名称
0-11太阳、月亮、水星、金星、火星、木星、土星、天王、海王、冥王、南交点、北交点

使用说明

注意事项:

  • 本接口无需任何请求参数,GET 或 POST 方式均可调用。
  • 每次调用都会随机返回一组不同的骰子结果。
  • sub_items 数组包含结构化子项(如"子女:..."、"事业:..."),适合前端分类展示。
  • raw_content 为原始描述文本按行拆分,适合全文展示。

应用场景

Python测试代码示例

import requests
import json

def test_dice_generate(base_url="https://chart.12sign.top"):
    url = f"{base_url}/dice/generate"

    try:
        print("正在测试占星骰子API...")
        response = requests.get(url)
        print(f"响应状态码: {response.status_code}")

        if response.status_code == 200:
            data = response.json()

            # 打印宫位信息
            house = data.get('house', {})
            print(f"\n宫位:{house.get('name')} (ID: {house.get('id')})")
            print(f"关键字:{house.get('keyword')}")
            print(f"描述:{house.get('description', '')[:100]}...")
            print("子项:")
            for item in house.get('sub_items', []):
                print(f"  - {item}")

            # 打印星座信息
            constellation = data.get('constellation', {})
            print(f"\n星座:{constellation.get('name')} (ID: {constellation.get('id')})")
            print(f"关键字:{constellation.get('keyword')}")

            # 打印行星信息
            planet = data.get('planet', {})
            print(f"\n行星:{planet.get('name')} (ID: {planet.get('id')})")
            print("子项:")
            for item in planet.get('sub_items', []):
                print(f"  - {item}")

            return data
        else:
            print(f"API请求失败: {response.status_code}")
            return None

    except Exception as e:
        print(f"请求出错: {e}")
        return None

if __name__ == "__main__":
    test_dice_generate()

在线测试

请求地址:
https://chart.12sign.top/dice
返回结果:
点击"掷骰子"后在此显示结果
骰子结果解读:
骰子结果将在请求成功后显示在这里