经过测试,可以下载要付费下载的歌曲(n_n)

准备工作:python3.5+pycharm

使用到的库:requests,re,json

步骤:

打开酷狗音乐的官网,输入想要搜索的歌曲(例如《天后》),然后回车搜索,得到如下页面:

右键检查或者按f12打开开发者工具,点击js选项,查找到如下信息,filename就是返回的歌手名和歌曲名信息,我们要将其提取出来:

由于这个网址返回的不是标准的json格式,所以要先进行如下处理,然后再转换成json格式:

res = requests.get(url).text

js = json.loads(res[res.index('(') + 1:-2])

提取到歌曲信息之后,我们输入一个序号代表要下载的歌曲序号,然后把歌曲下载下来就好了。

运行截图:

附上源码:

1 import requests

2 import json

3 import re

4

5

6 def get_song(x):

7 url = "http://songsearch.kugou.com/song_search_v2?callback=jquery112407470964083509348_1534929985284&keyword={}&" \

8 "page=1&pagesize=30&userid=-1&clientver=&platform=webfilter&tag=em&filter=2&iscorrection=1&privilege_filte" \

9 "r=0&_=1534929985286".format(x)

10 res = requests.get(url).text

11 js = json.loads(res[res.index('(') + 1:-2])

12 data = js['data']['lists']

13 for i in range(10):

14 print(str(i + 1) + ">>>" + str(data[i]['filename']).replace('', '').replace('', ''))

15 number = int(input("\n请输入要下载的歌曲序号(输入-1退出程序): "))

16 if number == -1:

17 exit()

18 else:

19 name = str(data[number - 1]['filename']).replace('', '').replace('', '')

20 fhash = re.findall('"filehash":"(.*?)"', res)[number - 1]

21 hash_url = "http://www.kugou.com/yy/index.php?r=play/getdata&hash=" + fhash

22 hash_content = requests.get(hash_url)

23 play_url = ''.join(re.findall('"play_url":"(.*?)"', hash_content.text))

24 real_download_url = play_url.replace("\\", "")

25 with open(name + ".mp3", "wb")as fp:

26 fp.write(requests.get(real_download_url).content)

27 print("歌曲已下载完成!")

28

29

30 if __name__ == '__main__':

31 x = input("请输入歌名:")

32 get_song(x)

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

python爬取酷狗音乐json数据为空_【Python3爬虫】下载酷狗音乐上的歌曲相关推荐

  1. 练习:使用Python爬取COVID-19疫情国内当日数据

    练习:使用Python爬取COVID-19疫情国内当日数据 推荐公众号:数据酷客 (里面有超详细的教程) 代码来源数据酷客公众号教程 URL它是Uniform Resource Locator的缩写, ...

  2. python爬取火车票网的时刻表数据

    python爬取火车票网的时刻表数据 导包 import re,requests,datetime,time,json from prettytable import PrettyTable from ...

  3. 通过爬取天猫商品评论实例分析Python爬取ajax动态生成的数据

    本文主要通过爬取天猫商品kindle的评论为例来说明利用python爬取ajax动态生成的数据的方式,本文使用的工具如下: 工具 chrome浏览器[寻找评论的动态链接] python3.5[执行代码 ...

  4. 使用Python爬取51job招聘网的数据

    使用Python爬取51job招聘网的数据 进行网站分析 获取职位信息 存储信息 最终代码 进行网站分析 进入https://www.51job.com/这个网站 我在这就以python为例搜索职位跳 ...

  5. python爬取股票信息_利用Python爬取网易上证所有股票数据(代码

    利用Python爬取网易上证所有股票数据(代码 发布时间:2018-04-14 17:30, 浏览次数:1261 , 标签: Python import urllib.request import r ...

  6. 如何使用python编程抢京东优惠券 知乎_学好Python爬取京东知乎价值数据

    原标题:学好Python爬取京东知乎价值数据 Python爬虫为什么受欢迎 如果你仔细观察,就不难发现,懂爬虫.学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这 ...

  7. python如何爬取实时人流量_使用python爬取微信宜出行人流量数据

    代码地址:https://liujiao111.github.io/2019/06/18/easygo/ 工具介绍: 该工具基于微信中的宜出行提供的数据接口进行爬取,能够爬取一定范围内的当前时间点的人 ...

  8. 使用python爬取BOSS直聘岗位数据并做可视化(Boss直聘对网页做了一些修改,现在的代码已经不能用了)

    使用python爬取BOSS直聘岗位数据并做可视化 结果展示 首页 岗位信息 岗位详情 薪资表 学历需求 公司排名 岗位关键词 福利关键词 代码展示 爬虫代码 一.导入库 二.爬取数据 1.爬取数据代 ...

  9. python爬取有道词典json报错,求帮助!

    python爬取有道词典json报错,求帮助! import urllib.request import urllib.parse import json import time import ran ...

最新文章

  1. 解决 IDEA 使用过程中让你觉得不爽的一些问题
  2. git报ssh variant 'simple' does not support setting port解决办法
  3. HDU 5646 DZY Loves Partition
  4. 小学学校计算机教室使用计划,小学电脑室工作计划
  5. 中国夹层玻璃板行业市场供需与战略研究报告
  6. 前端算法-基本排序算法比较
  7. dnastar拼接反向互补序列_什么叫“反向互补序列”????????
  8. Bp神经网络详解—matlab实现Bp神经网络
  9. 三级计算机信息安全基础知识
  10. 2017年11月软考全国各省市报名时间及报名网址(动态更新)
  11. java实现界面化,java实现图形化界面
  12. word2007制作封面、扉页和目录
  13. 投资问题(动态规划)
  14. iphone计算机照片大小,如何在iPhone上调整照片尺寸-缩小照片以缩小
  15. 计算机基础是公共必修课,计算机公共必修课《大学计算机基础》课程教学大纲.doc...
  16. tcp_timestamps tcp_tw_recycle引起的服务器连接不上问题
  17. 腾讯免费企业邮箱服务器,怎样使用免费的腾讯企业邮箱
  18. Leetcode883 三维形体投影面积 高效解法
  19. mac宽带连接找不到pppoe服务器,Mac如何建立PPPoE网络连接-Mac建立PPPoE网络连接教程 - 河东软件园...
  20. html5实践教学总结,个人实践教学总结

热门文章

  1. Qt之热敏打印机设置
  2. linux 深度 crossover,在Deepin V20(UOS)下使用crossover安装Kt交易师的方法
  3. Redis基础与高可用集群架构进阶详解
  4. 基于python的对比度增强(线性变换、直方图正规化、直方图均衡化、CLAHE)
  5. 项目之动态图片的制作
  6. 如何测试口红真假软件,如何辨别大牌口红的真假 看这一篇就够了
  7. 指令集与微架构 扫盲
  8. VirtualBox虚拟电脑控制台错误,不能为虚拟电脑打开一个新任务
  9. 【电影】小萝莉的猴神大叔
  10. nova7可以升级成鸿蒙20系统,华为nova7升级到EMUI11,8大功能提升,带来更新体验...