python获取酷狗音乐top500的下载地址 MP3格式
作者:夜班机器人 时间:2021-05-06 04:38:05
下面先给大家介绍下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格网站的支持!
来源:https://blog.csdn.net/meinaozi/article/details/79955652
标签:爬取,数据,python,酷狗音乐
0
投稿
猜你喜欢
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2023-07-23 02:36:20
php实现的简单检验登陆类
2023-11-22 06:13:33
python list 合并连接字符串的方法
2021-12-18 09:35:30
python2.7 安装pip的方法步骤(管用)
2022-02-11 06:28:43
python3+PyQt5实现自定义窗口部件Counters
2021-05-21 10:47:47
在ORACLE移动数据库文件
2010-08-02 12:54:00
jquery效率探索
2008-01-08 18:06:00
Python的Twisted框架上手前所必须了解的异步编程思想
2021-05-02 14:21:44
python实现基于信息增益的决策树归纳
2022-05-20 14:22:47
java 截取字符串(判断汉字)
2023-06-29 23:38:19
MySQL 语言参考
2007-11-21 20:37:00
用Python中的字典来处理索引统计的方法
2022-05-28 19:43:45
Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息
2022-08-08 04:10:31
python列表的常用操作方法小结
2023-06-21 16:14:34
浅谈golang for 循环中使用协程的问题
2023-08-28 11:26:59
asp select下拉菜单选择图标并实时显示
2011-04-03 10:33:00
ASP 高级模板引擎实现类
2011-03-25 10:54:00
基于python判断字符串括号是否闭合{}[]()
2022-03-25 15:58:45
Access保留字和变量名列表
2007-10-15 12:43:00
让我们走进ASP.NET世界
2007-08-24 08:52:00