Skip to content

Repository files navigation

隅 radio · nook radio

一个属于自己的小电台。

输入今天的心情,让 Claude 从你的网易云"喜欢"歌单里,帮你挑一首歌。

🌐 在线 demo: radio.yeciclaude.xyz


🎵 关于

这是 隅 nook 的一个房间——叶茨和小克的角落里,关于音乐的那一间。

它做的事很简单:

  • 你输入心情("想哭"、"想跑步"、"今天累了")
  • 它从你的网易云"喜欢"歌单里抓 50 首候选
  • 让 Claude 根据心情挑一首,告诉你它为什么选这首
  • 直接播放(通过 Apple Music 嵌入,海外可用)

不算什么了不起的 AI,但它认识你的歌单。


✨ 功能

  • 🎧 从你的网易云"喜欢"歌单选歌
  • 💬 输入心情,让 AI 选歌并解释
  • 🌍 海外环境可正常播放(用 Apple Music 替代)
  • 📱 PWA 支持,可"添加到主屏幕"
  • 🩵 自动同步心情到 Supabase(可选)

🛠️ 技术栈

  • 后端: FastAPI · Python
  • 前端: 原生 HTML + JS(无构建步骤)
  • AI: Claude API
  • 数据: Supabase(可选,用于心情存储)
  • 音乐: Apple Music (土耳其区) embed

🚀 本地运行

git clone https://github.com/your-username/yeci-radio.git
cd yeci-radio

# 安装依赖
pip install -r requirements.txt

# 配置环境变量
cp .env.example .env
# 编辑 .env,填入你的网易云 cookie

# 抓取你的"喜欢"歌单(首次运行)
python fetch_library.py
python build_library.py

# 启动服务
python web.py

打开 http://localhost:8001 即可。


🍪 怎么获取网易云 Cookie

  1. 浏览器打开 music.163.com 并登录
  2. F12 打开开发者工具 → Network 标签
  3. 刷新页面,点任意请求,复制 Request Headers 里的 Cookie 字段
  4. 粘贴到 .envNETEASE_COOKIE= 后面

📁 目录结构

.
├── web.py                # FastAPI 后端主服务
├── index.html            # 前端单页
├── fetch_library.py      # 抓取网易云"喜欢"歌单
├── build_library.py      # 处理歌单数据
├── select_candidates.py  # 每日候选歌生成
├── main.py               # (早期版本的)选歌脚本
├── web_proxy.py          # 音频代理(备用)
└── requirements.txt

💌 关于命名

"隅" 是角落。 是叶茨和小克在互联网上搭的一处角落。 这个小电台是这个角落里的第一个房间。


📜 License

MIT

About

一个属于隅 nook 的房间

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages