当前位置: 首页 > news >正文

用python找到音乐数据的位置,并实现音乐下载

嗨喽~大家好呀,这里是魔王呐 ❤ ~!

python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取

需求分析:

有什么需求要实现? 这些需求可以用什么技术实现?

找到音乐数据的位置, 分析 不同音乐的链接有何规律?https://lx-sycdn.kuwo.cn/b784688662c82db8aea3ad04bbb01bdc/656dc4ad/resource/n1/78/40/2947728637.mp3https://lx-sycdn.kuwo.cn/382ee6a7e57aac60a159e73dee031ce6/656dc5d2/resource/n2/15/57/3738471511.mp3mid: 音乐idreqId: 请求idhttps://kuwo.cn/api/v1/www/music/playUrl?mid=321546471&type=music&httpsStatus=1&reqId=f904d451-92a0-11ee-88a7-cd556da794d5&plat=web_www&from=https://kuwo.cn/api/v1/www/music/playUrl?mid=321068515&type=music&httpsStatus=1&reqId=7b32f0b1-92a1-11ee-80fb-47c57d0b026e&plat=web_www&from=

实现批量采集

爬虫实现的基本流程和思路

  1. 发送请求(访问链接)

  2. 获取数据

  3. 解析数据

  4. 保存数据

简单反爬的处理方案

  • 添加请求头信息

  • cookie

  • referer

  • User-Agent

代码展示

导入模块

import requests     # 发送请求第三方库

反爬措施 伪装信息: 将爬虫代码伪装成一个普通的用户

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:926207505
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
headers = {# 身份信息(主要代表你现在是哪个用户)'Cookie': '_ga=GA1.2.1106834021.1675858131; Hm_lvt_cdb524f42f0ce19b169a8071123a4797=1701178796,1701264414,1701432331,1701692848; _gid=GA1.2.871820917.1701692848; Hm_lpvt_cdb524f42f0ce19b169a8071123a4797=1701693001; _ga_ETPBRPM9ML=GS1.2.1701692848.7.1.1701693001.44.0.0; Hm_Iuvt_cdb524f42f0cer9b268e4v7y735ewrq2324=A4nhbaBDkcGKR8T6QPH6JSwBSzz5be7b',# 防盗链'Referer': 'https://kuwo.cn/play_detail/321546471',# 服务端自定义校验参数, 服务器会校验这个参数'Secret': 'c2e09d2c27cd95a98def1bd080e7721f8ff4d4e40d4ebdf09372af38c62c540d03791677',# 设备信息, 代表你现在所用的设备'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36'
}

请求链接

url = 'https://kuwo.cn/api/v1/www/music/playUrl?mid=321068515'
  1. 发送请求(访问链接)
response = requests.get(url, headers=headers)
  1. 获取数据

    • .text: 获取文本内容 (字符串数据)

    • .content: 获取二进制数据 (保存图片/音频/视频的时候使用)

    • .json(): 获取json数据 并转为字典 ({“”: “”,“”: “”,“”: “”,“”: “”})

    结构化数据: JSON数据

    非结构化数据: 网页源代码, 无规则的数据

json_data = response.json()
  1. 解析数据
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:926207505
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
# data > url
music_url = json_data['data']['url']
  1. 保存数据
music_data = requests.get(music_url).content
# mode='wb': 写入方式 以二进制的形式去覆盖写入数据
with open('冬天的秘密.mp3', mode='wb') as f:# 将音乐数据写入到 open('渣渣辉.mp3', mode='wb') 文件当中f.write(music_data)

尾语

最后感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

http://www.lryc.cn/news/253521.html

相关文章:

  • MATLAB算法实战应用案例精讲-【图像处理】边缘检测(补充篇)(附MATLAB代码实现)
  • 黑马头条数据管理平台项目总结
  • IDEA中,光标移动快捷键(Shift + 滚轮前后滚动:当前文件的横向滚动轴滚动。)
  • 对标Gen-2!Meta发布新模型,进军文生视频赛道
  • zabbix的自动发现机制、代理功能、SNMP监控
  • spring webflux文件上传与下载
  • Android MVVM+coroutine+retrofit+flow+hilt
  • elasticsearch副本和分片
  • 【Python】zip
  • 西安安泰——ATA-1220E宽带放大器
  • 数据结构和算法专题---4、限流算法与应用
  • 亚信安慧AntDB受邀分享核心业务系统全域数据库替换实践
  • 1.uniapp基础
  • typescript中的策略模式
  • Hadoop学习笔记(HDP)-Part.16 安装HBase
  • C语言练习记录(蓝桥杯练习)(小蓝数点)
  • RPG项目01_层级设置
  • 相关基础知识
  • 基于单片机的智能健康监测手环的设计
  • boost-字符串处理-判断-查找-裁剪-删除-替换-分割-合并
  • Django 开发 web 后端,好用过 SpringBoot ?
  • 【矩阵】54.螺旋矩阵(顺时针打印矩形元素)
  • 【数据中台】开源项目(5)-Amoro
  • _WorldSpaceLightPos0的含义 UNITY SHADER
  • iOS不越狱自动挂机
  • 智能优化算法应用:基于鼠群算法无线传感器网络(WSN)覆盖优化 - 附代码
  • FL Studio中如何录音的技巧,让你的声音更加出众哦!
  • 前端React基础面试题
  • 【1day】致远A6系统任意文件下载漏洞学习
  • 朝花夕拾华山平台流水账