【教程】免费下载咪哒小程序的唱歌录音文件, 附脚本

【教程】免费下载咪哒小程序的唱歌录音文件, 附脚本

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn]

背景介绍

在咪哒mini KTV中唱的歌,会自动录音并保存,然后可以在咪哒小程序上下载录音。

但是,在小程序上下载一首歌就要收1.99元,有一点点小贵。那么,如何免费下载呢?

下载步骤

1、电脑安装Fiddler、微信

2、运行Fiddler,相关配置教程网上搜索

3、微信打开咪哒小程序

4、启动Fiddler软件开始抓包;

5、切换一下小程序中歌曲列表的排序

6、切到Fiddler,找数据包,找到这一条

7、双击这条数据,在右下框中查看,可以发现歌曲的下载链接和信息

8、浏览器打开这个链接,就可以下载歌曲了

9、每首歌都可以这样操作。不过如果歌比较多,需要手动点下一页,然后再抓一次包。

自动脚本

1、你依旧需要完成前6步

2、记录下这两个内容:uid和token

3、脚本源码

import requests

from tqdm import tqdm

token = input(">> 输入token: ")

uid = input(">> 输入uid: ")

audio_folder = 'audio'

if not os.path.exists(audio_folder):

os.makedirs(audio_folder)

url = 'https://mk-gateway-pro.singworld.cn/mk-outside/api/record/getUnFreezeList'

headers = {'token': token, 'uid': uid}

data = {"reqUid":1010946254, "page":1,"rows":20, "overDue":3, "orderBy":"2", "unFreezingFlag":False}

response = requests.post(url, headers=headers, json=data)

total_pages = response.json()['data']['pages']

# 遍历所有页面

for page in range(1, total_pages + 1):

data['page'] = page

response = requests.post(url, headers=headers, json=data)

items = response.json()['data']['list']

print(f"下载第{page}/{total_pages}页...")

# 下载每个页面的音频文件

with tqdm(total=len(items), desc='Downloading', unit='file') as pbar:

for item in items:

audio_url = item['audioUrl']

file_name = f"{item['songName']}—{item['singerName']}.aac"

file_path = os.path.join(audio_folder, file_name)

audio_response = requests.get(audio_url)

# 保存音频文件

with open(file_path, 'wb') as file:

file.write(audio_response.content)

# 更新进度条描述和进度

pbar.set_description(f"Downloaded {file_path}")

pbar.update(1)

print("下载完成!")

5、如果运行源码,注意先装库

pip install pyinstaller tqdm requests

工具下载

我已经打包为exe放到了这里,可以去下载:

https://github.com/1061700625/small_tools_v2

small_tools_v2: 使用tkinter和Python制作的小工具集,非常方便自己扩展

使用示例

其他说明

对于音频格式问题,可以使用“格式工厂”来转换。

相关推荐