爬虫案例-爬取某狗音乐

文章目录

1、爬取代码

python 复制代码
import time
import requests
import hashlib
import jsonpath
import os

url = "https://wwwapi.kugou.com/play/songinfo"

#伪造请求头
header= {
    "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36 QuarkPC/2.3.0.256"

}
#uuid = str(int(time.time()))
clinenttime = str(int(time.time()*1000))

#print(uuid)
#print(clinenttime)
# 数据列表
data_list = [
"NVPh5oo715z5DIWAeQlhMDsWXXQV4hwt",
"appid=1014",
f"clienttime={clinenttime}",
"clientver=20000",
"dfid=2UHWk60sDseo11EBHT1lYwCJ",
"encode_album_audio_id=c2bdq0fc",
"mid=51d94f366e27b4cd47c2f46aa11ac7e6",
"platid=4",
"srcappid=2919",
"token=a062aa8f897a25ed7b96c1e3919c42febd73e21a1a775fafd959f2ff63e36697",
"userid=2307953011",
"uuid=51d94f366e27b4cd47c2f46aa11ac7e6",
"NVPh5oo715z5DIWAeQlhMDsWXXQV4hwt"
]

# 将列表拼接成一个完整的字符串
data = "".join(data_list)
#MD5加密
md5_hash = hashlib.md5(data.encode()).hexdigest()
#md5 = md5_hash.upper()
#print(md5_hash)


params= {
    "srcappid":"2919",
    "clientver":"20000",
    "clienttime":{clinenttime},
    "mid":"51d94f366e27b4cd47c2f46aa11ac7e6",
    "uuid":"51d94f366e27b4cd47c2f46aa11ac7e6",
    "dfid":"2UHWk60sDseo11EBHT1lYwCJ",
    "appid":"1014",
    "platid":"4",
    "encode_album_audio_id":"c2bdq0fc",
    "token":"a062aa8f897a25ed7b96c1e3919c42febd73e21a1a775fafd959f2ff63e36697",
    "userid":"2307953011",
    "signature":{md5_hash}
}
#请求URL
request = requests.get(url,headers=header,params=params)
json = request.json()
#print(json)

#提取音乐名称、下载音乐地址
muisc_info = {
        "音乐名称": jsonpath.jsonpath(json,"$..audio_name")[0],
        "下载音乐地址" :  jsonpath.jsonpath(json,"$..play_url")[0]
}
print(muisc_info['音乐名称'],muisc_info['下载音乐地址'])
# 创建输出目录
output_folder = r"C:/Users/zzx/Desktop/音乐" + "/"
if not os.path.exists(output_folder):
    os.makedirs(output_folder)

# 下载音乐文件
music_url = muisc_info["下载音乐地址"]
music_response = requests.get(music_url, headers=header)

# 保存音乐文件
music_filename = os.path.join(output_folder, f"{muisc_info['音乐名称']}.mp3")
with open(music_filename, mode="wb") as f:
    f.write(music_response.content)

print(f"音乐已保存到: {music_filename}")

2、效果图


相关推荐
跨境旺仔小拳头4 小时前
如何使用Crawl4AI进行网页爬虫?从0搭建教程与代理配置指南
网络·人工智能·爬虫·chatgpt·aigc
傻啦嘿哟9 小时前
某东商品爬虫实战:爬取商品价格+评论+销量,做竞品分析工具
爬虫
楷哥爱开发10 小时前
IPFoxy爬虫代理配置指南:从0搭建Crawl4AI网页爬虫教程
大数据·运维·人工智能·爬虫
名字还没想好☜15 小时前
Python asyncio.Queue 实战:用生产者-消费者给爬虫/任务流限速又解耦
开发语言·爬虫·python·并发·asyncio
2601_9669496516 小时前
Python 量化数据质量校验:如何确保股票历史日线数据不存在缺失交易日?
开发语言·人工智能·爬虫·python·量化策略·量化·quantdash
benchmark_cc17 小时前
Claude Code + MCP + QuantDash:打造全自动量化研究流水线的终极指南
人工智能·后端·爬虫·算法·claude·mcp·quantdash
Buke..2 天前
【小程序逆向】某游快爆 AI 逆向 sign参数:AI 辅助分析与 MCP 工具链实战
前端·人工智能·爬虫·python·小程序·notepad++
码农飞哥2 天前
RAG 翻车实测 + LangGraph Agent 实时抓取修复
人工智能·爬虫·langchain·ai编程·亮数据
小白的成长路程2 天前
移动版藏内容,AI爬虫直接跳过
人工智能·爬虫
IT毕设实战小研2 天前
基于大数据的二手车数据分析与预测
java·大数据·后端·爬虫·python·算法·课程设计