下面先给大家介绍下python获取酷狗音乐top500的下载地址 MP3格式,具体代码如下所示:

# -*- coding: utf-8 -*-

# @Time : 2018/4/16

# @File : kugou_top500.py

# @Software: PyCharm

# @pyVer : python 2.7

import requests,json

headers={

'UserAgent' : 'Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3',

'Referer' : 'http://m.kugou.com/rank/info/8888',

'Cookie' : 'UM_distinctid=161d629254c6fd-0b48b34076df63-6b1b1279-1fa400-161d629255b64c; kg_mid=cb9402e79b3c2b7d4fc13cbc85423190; Hm_lvt_aedee6983d4cfc62f509129360d6bb3d=1523818922; Hm_lpvt_aedee6983d4cfc62f509129360d6bb3d=1523819865; Hm_lvt_c0eb0e71efad9184bda4158ff5385e91=1523819798; Hm_lpvt_c0eb0e71efad9184bda4158ff5385e91=1523820047; musicwo17=kugou'

}

def get_songs(url):

res=requests.get(url,headers=headers)

return res.text

def get_song_download_url(url):

res=requests.get(url,headers=headers)

res_tmp_list = json.loads(res.text)

return res_tmp_list['data']['play_url']

def get_song_page_data(url):

Song_Json = json.loads(get_songs(URL))

Song_List_Json = Song_Json['data']['info']

total = []

for i in range(len(Song_List_Json)):

song_download_url = "http://www.kugou.com/yy/index.php?r=play/getdata&hash=%s&album_id=%s&_=1523819864065" % (Song_List_Json[i]['hash'], Song_List_Json[i]['album_id'])

song_data_dict = {'downloadUrl':get_song_download_url(song_download_url),'fileName':Song_List_Json[i]['filename']}

total.append(song_data_dict)

return total

for i in range(1,18):

URL='http://mobilecdngz.kugou.com/api/v3/rank/song?rankid=8888&ranktype=2&page=%s&pagesize=30&volid=&plat=2&version=8955&area_code=1' % i

page_list_data = get_song_page_data(URL)

for j in range(len(page_list_data)):

print "%s %s" % (page_list_data[j]['fileName'],page_list_data[j]['downloadUrl'])

效果

下面看下python--爬取酷狗TOP500的数据

你是不是也遇到不能完整爬取TOP500的数据,因为规律只在前几页有用,后面有小改动,所以中间跳转了,不是完整的TOP500。我换了个方向,爬取飙升榜100首(上面代码)。

希望酷狗给大家个机会哈,毕竟才100首影响不了多大。

from bs4 import BeautifulSoup

import requests

import time

headers={

'User-Agent':'Mozilla/5.0 (Windows NT 6.1;WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3298.4 Safari/537.36'

}

def get_info(url):

wb_data = requests.get(url,headers=headers)

soup = BeautifulSoup(wb_data.text,'lxml')

ranks = soup.select('span.pc_temp_num')

titles = soup.select('div.pc_temp_songlist > ul > li > a')

times = soup.select('span.pc_temp_tips_r > span')

for rank,title,time in zip(ranks,titles,times):

data= {

'rank':rank.get_text().strip(),

'siger':title.get_text().split('-')[0],

'song':title.get_text().split('-')[1],

'time':time.get_text().strip()

}

print(data)

#酷狗飙升榜100首

if __name__ == '__main__':

urls = ['http://www.kugou.com/yy/rank/home/{}-6666.html?from=rank/'.format(str(i)) for i in

range(1,6)]

for url in urls:

get_info(url)

time.sleep(2)

总结

以上所述是小编给大家介绍的python获取酷狗音乐top500的下载地址 MP3格,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

本文标题: python获取酷狗音乐top500的下载地址 MP3格式

本文地址: http://www.cppcns.com/jiaoben/python/225402.html

python爬取酷狗音乐top500_python获取酷狗音乐top500的下载地址 MP3格式相关推荐

  1. python爬取公众号文章如何获取发布时间

    python爬取公众号文章如何获取发布时间 在上一篇爬取公众号的文章中爬虫如何爬取微信公众号文章介绍了如何获取公众号的所有历史文章链接,但当我根据链接去爬取文章的时候,却遇到了一个小问题,就是文章的发 ...

  2. python爬取网站时,一键获取headers、url等信息(真的是让我爬取网站时,省了不少力气,作为小秘密分享给大家喽)

    python爬取网站时,一键获取headers.url等信息 (真的是让我爬取网站时,省了不少力气,作为小秘密分享给大家喽) 作为Python的使用者,我今天就和大家来分享分享我学习python的经验 ...

  3. Python爬取热搜数据之炫酷可视化

    可视化展示 看完记得点个赞哟 炫酷可视化音乐组合版来了! 项目介绍 背景 现阶段.抖音.快手.哗哩哗哩.微信公众号已经成为不少年轻人必备的"生活神器".在21世纪的今天,你又是如何 ...

  4. 利用Python爬取基于AES对称加密算法的网易云音乐用户评论数据

    本文利用Python2.7根据网易云音乐歌曲ID爬取了该歌曲的所有用户评论数据.以id是28875120的歌曲<小岁月太着急>为示例,通过Chrome的DevTools工具获取已加密评论数 ...

  5. Python爬取蓝奏云直链(获取真实文件地址)

    最近在用蓝奏云,这款云盘无限速并且操作分享简单,自认为挺好的一个云盘,所以研究了如何通过蓝奏云分享链接获取文件最终地址.你可能问爬取直链有什么用,我说一下我的需求,我的服务器学生机带宽是1m,很小.我 ...

  6. Python爬取Boss直聘,获取全国Python薪酬榜

    深感抱歉 本来这篇文章应该是在昨天发的,可是电脑出了问题蓝屏了.晚上回来重装了系统,结果还是搞到了现在. 今天想和大家聊聊Python与爬虫 python之所以能迅速风靡全国,和大街小巷各种的培训机构 ...

  7. python爬取电影天堂新片精品模块电影列表,并用迅雷下载

    python版本是3.6.5,上代码: # 爬取电影天堂 from selenium import webdriver import requests from bs4 import Beautifu ...

  8. 利用python爬取历代中国行政图,从先周到中华人民共和国,jpg格式边框带经纬度,可自行配准矢量化

    古代地图,对于历史相关研究人员,是需要的工具,本想找到历代矢量的历史地图数据,但是发现很难有资源,因此只能找到已经公开制图了jpg数据,如果你有耐心,可以配准后矢量化,获取历代矢量数据,不够工作量浩大 ...

  9. Python爬取猪肉价格网并获取Json数据

    场景 猪肉价格网站: http://zhujia.zhuwang.cc/ 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获 ...

最新文章

  1. 基于JSP实现的项目管理平台系统
  2. 【Flask】Jinja2模板之过滤器
  3. 深度学习——你应该掌握的数学知识
  4. python3.5安装pip_pip和pip3 – 都指向python3.5?
  5. 假如一个程序员有社交牛逼症
  6. C语言线性表之循环单链表
  7. Linux mail 邮件发送
  8. Matlab中bsxfun和unique函数解析
  9. 硬盘容量统计显示WinDirStat v1.1.2.79(印心绿化版)
  10. 详细讲解32F103/MS51单片机串口ISP程序下载的方法和操作步骤
  11. MOS管自举电容工作原理电路设计及其分析
  12. 一元二次方程组求根问题
  13. 第三方应用在通话过程中调用setspeakerphoneon没有用_从0到1打造一个 WebRTC 应用
  14. Design Compiler工具学习笔记(7)
  15. 解决vue项目路由出现message: “Navigating to current location (XXX) is not allowed“的问题
  16. AndroidStudio使用properties资源文件
  17. 博弈论 Nim游戏与SG函数
  18. 大众点评的大数据实践转
  19. CMT2380F32模块开发4-UART例程
  20. 首次曝光!唯一全域最高等级背后的阿里云云原生安全全景图

热门文章

  1. linux中PATH变量-详细介绍
  2. 在c语言程序中 对文件进行操作首先要,《C语言程序设计》试题八及答案
  3. LDAP组的概念以及命令
  4. javascript复制到黏贴板之完美兼容
  5. Luogu P2463 [SDOI2008]Sandy的卡片
  6. Python自动化运维之高级函数
  7. Commonjs规范及Node模块实现
  8. 网站后端_Python+Flask.0007.FLASK构造跳转之301跳转与302重定向?
  9. Python正则表达式指南上半部
  10. Get sdcard directory by adb