您的代码爬取其他音乐更改url出现的问题

您好,这是您的代码,


import requests
import urllib.request
import re
import os
import time
import random

def spyder():
    url2 = 'https://www.kugou.com/song/'#获取音乐名称的网址
    url = 'https://wwwapi.kugou.com/yy/index.php?r=play/getdata&callback=jQuery191022319455667175525_1656931735444&hash=A2B996FC632A8F47A133AB6DC170C3D2&dfid=08xfYy3h9Bb80MNaNz4Rwr4f&appid=1014&mid=aa783e35cc2172a6a48a817ad8e3b285&platid=4&album_id=655511&_=1656931735446'#获取音乐链接的地址
    headers = {#设置请求报头
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.57'
    }
    time.sleep(random.randint(1,3))#睡眠随机1-3秒
    response = requests.get(url,headers=headers)#用requests库请求音乐链接地址,传入请求头,获得响应。
    html = response.text#将响应内容是页面源代码。
    reg = 'jQuery191042885499078356704_1616423281083(.*?);'#设置规则
    content = re.findall(reg,html)#匹配内容
    element = content[0]#将字符串取出列表
    response2 = requests.get(url2,headers)
    html2 = response2.text#获取音乐名称的源代码
    print(element)
    reg2 = '<meta name="keywords" content="(.*?)" />'#设置规则
    music_name = re.findall(reg2,html2)[0]#匹配规则内容,获取音乐名称。
    reg = '"play_backup_url":"(.*?)"'
    music_href = re.findall(reg,html)[0]#获取音乐链接
    music_ls = []
    for m in music_href:#拆散链接
        music_ls.append(m)
    while True:
        if '\\' in music_ls:#如果转义符存在列表中则删除
            music_ls.remove('\\')
        else:#直到列表中不存在转义符跳出循环
            break
    print(music_ls)
    music = ''#设置中间字符变量去拼接字符串
    for i in music_ls:
        music += i
    print(music)#打印音乐链接
    Music = requests.get(music,headers=headers)
    os.mkdir('E:/music')  #创建一个music文件夹。
    with open(r'E:/music/{}.mp3'.format(music_name), 'wb+') as f:#格式化字符串的方法将音乐名称传进去。
        f.write(Music.content)#写入音频内容。
spyder()#调用函数


```看了您的代码感悟很大
这是您的代码,我爬取wake歌曲,却不能了,显示list  index out of range,怎么办啊

你好,关于这个问题,我感到抱歉,因为这是定向的爬虫,你看那个JSON的网址就了解了,还有就是这个网站已经更变结构了,之前的代码行不通了,抱歉啊。你要是想爬啥音乐可以私聊我。