好友
阅读权限10
听众
最后登录1970-1-1
|
本帖最后由 2513002960 于 2020-12-19 19:01 编辑
新手贴,希望大家可以多加支持
排版可能不好看,多家见谅
前两天看到酷我新出了一个软件没发现里面周董的歌居然也可以免费听
对于苦于没有东西联系爬虫的我简直是发现了一个宝藏
打包好的软件 链接:https://shuxiaobai.lanzouj.com/iBK7Sjil7af 音乐下载成功后软件会自动关闭,这个测试用就行
下面就是我的源代码
[Python] 纯文本查看 复制代码 import os
import re
import requests
"""
获取下载连接 https://yueyue.kuwo.cn/api/service/music/audioUrl/{}
获取歌曲 http://yueyue.kuwo.cn/api/search/music/list?pn=0&rn=20&keyword={}&uid=-1&token=
"""
headers = {
'User-Agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Mobile Safari/537.36'
}
def get_music_name(name, rn):
url = 'http://yueyue.kuwo.cn/api/search/music/list?pn=0&rn={}&keyword={}&uid=-1&token='.format(rn, name)
response = requests.get(url, headers=headers).json()
return response['data']['resultList']
def get_url(id):
url = 'https://yueyue.kuwo.cn/api/service/music/audioUrl/{}'.format(id)
response = requests.get(url, headers=headers).json()
return response['data']['audioUrl']
def dow(name, url):
print(f'开始下载{name}')
if not os.path.exists('./音乐/'):
os.mkdir('./音乐/')
pattern = re.compile(r"[\/\\\:\*\?\"\<\>\|]")
name = re.sub(pattern, ' ', name)
response = requests.get(url).content
with open(f'./音乐/{name}.mp3', mode='wb') as f:
f.write(response)
print(f'{name} 下载完成')
in_name = input('请输入你要搜索的音乐: ')
in_rn = input('请输入你要搜索的数量: ')
if in_rn == '':
rn = 11
else:
rn = int(in_rn) + 1
datas = get_music_name(in_name, rn)
data_list = []
print('搜索到的歌曲有:')
for i in range(len(datas)):
music_name = datas[i]['songName'] + '-' + datas[i]['artist']
music_id = datas[i]['musicRid'].split('_')[1]
data_list.append({"music_name": music_name, "music_id": music_id})
print(f'{i + 1}. {music_name}')
num_in = input('请输入你要下载的音乐的序号: ')
music_url = get_url(data_list[int(num_in) - 1]['music_id'])
name = in_name + '-' + datas[int(num_in) - 1]['artist']
dow(data_list[int(num_in) - 1]['music_name'], music_url)
|
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|