在电脑端,网易云音乐在播放歌曲时会将歌曲缓存至设备中,但对其进行了加密(后缀名.uc)。可使用简单的python代码进行破解,得到mp3文件。可以代替下载操作。
代码如下:
import os
# 缓存文件存放目录
cache_folder = 'D:\\CloudMusic\\Cache'
# 获取uc缓存文件列表
def getAllCache():
cache_list = []
for root, _, fs in os.walk(cache_folder):
for f in fs:
if f.endswith('.uc'):
fullname = os.path.join(root, f)
cache_list.append(fullname)
return cache_list
# 在桌面创建文件夹作为保存位置
def setSaveFolder():
desktop = os.path.join(os.path.expanduser('~'), 'Desktop')
os.makedirs(desktop + '\\wyy_mp3')
save_folder = os.path.join(desktop, 'wyy_mp3')
return save_folder
# 将uc文件转换成mp3文件并保存
def transToMP3(cache_list, save_folder):
nameid = 0
for cache_file in cache_list:
mp3_name = str(nameid) + '.mp3'
with open(cache_file, 'rb') as f:
with open(save_folder + '\\' + mp3_name, 'wb') as s:
byte = f.read(1)
while byte:
b = int.from_bytes(byte,byteorder='little', signed=False)
b = b ^ 163
a = bytes([b])
s.write(a)
byte = f.read(1)
print(nameid)
nameid = nameid + 1
if __name__ == '__main__':
cache_list = getAllCache()
save_folder = setSaveFolder()
transToMP3(cache_list, save_folder)
找到网易云缓存路径
歌曲缓存存放在目录中的Cache文件夹中

.uc文件即为网易云音乐的加密缓存文件
将文件路径写入python代码,运行程序,即可生成破解后的mp3文件。