酷狗音乐单曲爬取

磊落不羁 by:磊落不羁 分类:爬虫 时间:2年前 阅读:62 评论:0

酷狗音乐单首歌曲下载

单首歌曲下载没有问题

url链接复制的别人的进行的修改。我就纳了闷了,怎么我复制的url链接就不行呢?明明区别不大。我这个脑子呀。。果然不如别人灵活。

import requests
from urllib import parse
import json
import time
import re
import os
import webbrowser
import warnings
warnings.filterwarnings('ignore')
def download_song(hash,album_id,time):
    # 获取相关参数

    #通过参数获取歌曲json并解析
    json_url = 'https://wwwapi.kugou.com/yy/index.php?r=play/getdata&callback=jQuery19109016032522568235_1609768307593&hash=' + hash + '&dfid=0QqplI0WZxot12pqVh08WTx7&mid=e3a0e7839e40cf5a59a03b06b05fda0e&platid=4&album_id=' + album_id
    headers={
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.79 Safari/537.36'
    }

    res=requests.get(url=json_url,headers=headers).text
    res=re.findall(r'jQuery.*?\((.*?)\);',res)[0]
    json_c=json.loads(res)
    song_name=json_c['data']['song_name']
    song_url=json_c['data']['play_url']
    print(song_name+'---'+song_url+' --start download!')

    dir='酷狗音乐'
    if not os.path.exists(dir):
        os.mkdir(dir)

    #下载音乐
    song_c=requests.get(url=song_url,headers=headers,verify=False).content
    filename=dir+'/'+song_name+'.mp3'
    with open(filename,'wb') as f:
        f.write(song_c)
        print(song_name+'-下载完成!')

if __name__=='__main__':
    webbrowser.open('https://www.kugou.com/')
    a=True
    while a:
        try:
            url=input('酷狗歌曲地址:')
            url = parse.urlparse(url)  # 对url参数进行解析
            # print(url)
            param = parse.parse_qs(url.fragment)
            hash = param['hash'][0]
            album_id = param['album_id'][0]
            shijianchuo = str(round(time.time() * 1000))
            download_song(hash,album_id,shijianchuo)
        except:
            print('检查输入链接是否正确!')


非特殊说明,本文版权归原作者所有,转载请注明出处

本文地址:http://php.liulei.com.cn/?type=acticle&id=49

评论列表

发表评论

  • 昵称(必填)
  • 邮箱
  • 网址

TOP