You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否在HTML网站嵌入绑定个人Apple Music的「正在播放」组件?

免费实现Apple Music播放状态展示的可行方案

1. 本地脚本+静态JSON同步(零成本)

这是最靠谱的免费方案,核心思路是用脚本抓取本地Apple Music的播放信息,同步到网站的静态文件里,再让网页读取展示:

  • 用AppleScript写个简单的信息抓取脚本(macOS原生支持,不用额外安装工具):
    tell application "Music"
        if player state is playing then
            set trackName to name of current track
            set artistName to artist of current track
            set trackUrl to share URL of current track
            return "{\"track\":\"" & trackName & "\",\"artist\":\"" & artistName & "\",\"url\":\"" & trackUrl & "\"}"
        else
            return "{\"track\":\"未在播放\",\"artist\":\"\",\"url\":\"\"}"
        end if
    end tell
    
  • 把脚本设为定时任务:用macOS的「自动操作」创建一个定时运行的工作流,或者用launchd配置每隔5-10秒执行一次,把脚本输出的JSON内容写入你网站目录下的now-playing.json文件。如果网站是远程托管的,就用rsync定时把这个JSON文件同步到服务器。
  • 网页端读取展示:在HTML里加一段JS代码,拉取这个JSON文件并渲染内容:
    const renderNowPlaying = async () => {
      const container = document.getElementById('apple-music-player');
      try {
        const res = await fetch('/now-playing.json');
        const data = await res.json();
        if (data.track !== "未在播放") {
          container.innerHTML = `<span>正在听:</span><a href="${data.url}" target="_blank">${data.track}</a><span> - ${data.artist}</span>`;
        } else {
          container.innerHTML = "<span>当前未播放Apple Music</span>";
        }
      } catch (err) {
        container.innerHTML = "<span>无法获取播放状态</span>";
      }
    };
    // 页面加载时执行,也可以加定时刷新
    renderNowPlaying();
    setInterval(renderNowPlaying, 10000);
    

2. 借助第三方免费工具简化流程

不想自己写脚本的话,可以找Mac上的免费「Now Playing」类工具,比如Mac App Store里的一些免费应用,支持自动抓取Apple Music播放状态,并导出为JSON文件或发送到自定义接口。你只需要把这些工具导出的数据同步到网站即可,省去自己写脚本的步骤。

关于Apple Developer Program的补充

加入开发者计划确实能通过Apple Music API或MusicKit JS实现更“原生”的实时获取,但需要账号授权,而且99美元的年费对于个人网站的这个小需求来说完全没必要,上面的免费方案足够满足你的需求。

内容的提问来源于stack exchange,提问作者Eric

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 08:52:26