关于 media-info
media-info 是获取音乐与影视信息的技能,涵盖榜单、歌词、电影、票房和收视数据。它通过示例中的 60s API 端点提供信息,适用于展示娱乐动态的机器人或摘要。
主要功能
- 01网易云音乐榜单及详情
- 02按关键词搜索歌词
- 03电影列表与实时票房
- 04电视剧收视及网剧排名
适用场景
- 01制作音乐推荐机器人
- 02追踪实时电影票房
- 03按歌曲或艺人查找歌词
- 04汇总音乐与影视动态
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ vikiboss/ 60s-skills --skill media-info安装后在 Claude Code 中输入/media-info确认已加载。
详细介绍
媒体信息技能
获取音乐和电影信息,包括排行榜、歌词、票房和评分。
可用信息
- 网易云音乐排行榜 - 音乐排行榜列表
- 排行榜详情 - 歌曲列表详情
- 歌词搜索 - 查找歌曲歌词
- 电影信息 - 全部电影数据库
- 电影票房 - 实时票房排名
- 电视剧评分 - 电视剧评分
- 网络剧排行榜 - 网络剧热度排名
API 端点
| 类型 | 端点 | 方法 |
|---|---|---|
| 音乐排行榜 | /v2/ncm-rank/list | GET |
| 排行榜详情 | /v2/ncm-rank/{id} | GET |
| 歌词 | /v2/lyric | POST |
| 全部电影 | /v2/maoyan/all/movie | GET |
| 票房 | /v2/maoyan/realtime/movie | GET |
| 电视剧评分 | /v2/maoyan/realtime/tv | GET |
| 网络剧 | /v2/maoyan/realtime/web | GET |
快速示例
网易云音乐排行榜
import requests
# Get all music rank lists
response = requests.get('https://60s.viki.moe/v2/ncm-rank/list')
ranks = response.json()
print("🎵 网易云音乐榜单")
for rank in ranks['data']:
print(f"· {rank['name']} (ID: {rank['id']})")
# Get specific rank details
rank_id = '3778678' # 飙升榜
response = requests.get(f'https://60s.viki.moe/v2/ncm-rank/{rank_id}')
songs = response.json()
print(f"\n🎵 {songs['name']}")
for i, song in enumerate(songs['songs'][:10], 1):
print(f"{i}. {song['name']} - {song['artist']}")
歌词搜索
# Search for lyrics
data = {'keyword': '稻香 周杰伦'}
response = requests.post('https://60s.viki.moe/v2/lyric', json=data)
result = response.json()
print(f"🎤 {result['song']} - {result['artist']}")
print(f"\n{result['lyrics']}")
电影票房
# Get real-time box office
response = requests.get('https://60s.viki.moe/v2/maoyan/realtime/movie')
movies = response.json()
print("🎬 实时电影票房")
for movie in movies['data'][:5]:
print(f"{movie['rank']}. {movie['name']}")
print(f" 票房:{movie['box_office']}")
print(f" 上座率:{movie['attendance_rate']}")
电视剧评分
# Get TV drama ratings
response = requests.get('https://60s.viki.moe/v2/maoyan/realtime/tv')
shows = response.json()
print("📺 电视剧收视率排行")
for show in shows['data'][:5]:
print(f"{show['rank']}. {show['name']}")
print(f" 收视率:{show['rating']}")
网络剧排行榜
# Get web series rankings
response = requests.get('https://60s.viki.moe/v2/maoyan/realtime/web')
series = response.json()
print("📱 网剧热度排行")
for s in series['data'][:5]:
print(f"{s['rank']}. {s['name']}")
print(f" 热度:{s['popularity']}")
使用场景
音乐推荐机器人
def get_trending_music():
# Get soaring charts (飙升榜)
response = requests.get('https://60s.viki.moe/v2/ncm-rank/3778678')
songs = response.json()
message = "🎵 当前最火的歌曲:\n\n"
for i, song in enumerate(songs['songs'][:5], 1):
message += f"{i}. {song['name']} - {song['artist']}\n"
return message
电影票房追踪器
def get_box_office_summary():
response = requests.get('https://60s.viki.moe/v2/maoyan/realtime/movie')
movies = response.json()
top_3 = movies['data'][:3]
summary = "🎬 今日票房TOP3\n\n"
for movie in top_3:
summary += f"🏆 {movie['rank']}. {movie['name']}\n"
summary += f" 💰 票房:{movie['box_office']}\n"
summary += f" 📊 上座率:{movie['attendance_rate']}\n\n"
return summary
歌词查找器
def find_lyrics(song_name, artist=''):
keyword = f"{song_name} {artist}".strip()
data = {'keyword': keyword}
response = requests.post('https://60s.viki.moe/v2/lyric', json=data)
result = response.json()
if result.get('lyrics'):
return f"🎤 {result['song']} - {result['artist']}\n\n{result['lyrics']}"
else:
return "未找到歌词"
娱乐资讯简报
def get_entertainment_digest():
# Music
music_rank = requests.get('https://60s.viki.moe/v2/ncm-rank/3778678').json()
top_song = music_rank['songs'][0]
# Movies
movies = requests.get('https://60s.viki.moe/v2/maoyan/realtime/movie').json()
top_movie = movies['data'][0]
# TV shows
shows = requests.get('https://60s.viki.moe/v2/maoyan/realtime/tv').json()
top_show = shows['data'][0]
digest = f"""
🎭 娱乐资讯速递
🎵 音乐:{top_song['name']} - {top_song['artist']}
🎬 电影:{top_movie['name']} 票房{top_movie['box_office']}
📺 电视剧:{top_show['name']} 收视率{top_show['rating']}
"""
return digest
示例交互
用户:“现在什么歌最火?”
response = requests.get('https://60s.viki.moe/v2/ncm-rank/3778678')
songs = response.json()
print("🎵 网易云飙升榜 TOP 5")
for i, song in enumerate(songs['songs'][:5], 1):
print(f"{i}. {song['name']} - {song['artist']}")
用户:“帮我找《稻香》的歌词”
data = {'keyword': '稻香'}
response = requests.post('https://60s.viki.moe/v2/lyric', json=data)
result = response.json()
print(f"🎤 {result['song']} - {result['artist']}\n")
print(result['lyrics'])
用户:“今天电影票房排行”
response = requests.get('https://60s.viki.moe/v2/maoyan/realtime/movie')
movies = response.json()
print("🎬 实时票房排行")
for movie in movies['data'][:5]:
print(f"{movie['rank']}. {movie['name']} - {movie['box_office']}")
最佳实践
- 音乐排行榜:缓存排行榜列表,因为它们不会频繁变化
- 歌词:在搜索中加入歌手姓名,以提高准确度
- 票房:数据更新频繁,请显示时间戳
- 错误处理:处理未找到歌词或数据的情况
- 格式:以清晰易读的格式呈现数据
相关资源
评论
支持 Markdown