監(jiān)控日志獲取網(wǎng)易云音樂(lè)正在播放的歌曲信息
網(wǎng)易云音樂(lè)電腦版播放日志文件位置如下:
"C:\Users\用戶名\AppData\Local\Netease\CloudMusic\webdata\file\history"
????????通過(guò)監(jiān)控日志文件的修改,獲得前一部分json數(shù)據(jù)便能確定正在播放的音樂(lè);

????此外通過(guò)監(jiān)控日志,還可以得到JSON中展示的歌曲的相關(guān)數(shù)據(jù),包括歌曲所屬專輯、歌曲名稱、演唱者、時(shí)長(zhǎng)、歌曲鏈接等信息。
此外還有:除了歌曲相關(guān)的信息,這段JSON還包括了一些評(píng)論、播放記錄、特權(quán)和權(quán)限等信息。例如,每首歌曲都有一個(gè)評(píng)論線程ID、播放次數(shù)和評(píng)論數(shù)等;每個(gè)歌曲都有一個(gè)特權(quán)對(duì)象,其中包含了歌曲的ID、版本、價(jià)格等信息;同時(shí),還有一些播放記錄、時(shí)間戳、播放方式、音質(zhì)等信息。
????其中想要獲得監(jiān)控播放時(shí)間需要注意一下幾個(gè)屬性:
startlogtime、playedTime、lastTime、logDuration、time
這幾個(gè)屬性都與播放時(shí)間有關(guān);
????為了獲取播放時(shí)長(zhǎng),需要對(duì)每個(gè)歌曲的 JSON 數(shù)據(jù)進(jìn)行解析。以第一首歌曲"What You Know Bout Love"為例,其對(duì)應(yīng)的 JSON 如下所示:
{ "track": { ..., "duration": 160000, ..., "playedTime": 30.28, "lastTime": 30.28, "logDuration": 30.28, ... }, ... }
????其中,"duration" 字段代表歌曲的總時(shí)長(zhǎng),單位為毫秒;"playedTime" 和 "lastTime" 字段代表已播放的時(shí)間和剩余的時(shí)間,單位為秒;"logDuration" 字段代表播放記錄中記錄的播放時(shí)長(zhǎng),單位為秒。
????因此,我們可以通過(guò)訪問(wèn)這些字段來(lái)獲取歌曲的播放時(shí)長(zhǎng)。