Python 通过Spotify API获得前100名艺术家
我正在做一个关于数据分析的大学项目,特别是,我试图分析Spotify上的听众在大流行之前和期间的行为 到目前为止,我下载了每周前200名,并用一个简单的脚本按州对其进行了分组,您可以在这里找到数据: 我还设法使用这些前200名检索每首歌曲和提取功能,发行日期ecc。。。使用SpotifyAPI 我读了这篇文章:很有趣。我想模仿他们在文章中的做法。例如,他们能够按流派检索前100名艺术家 我一直在寻找Spotify API和Spotify可用的数据集,但我找不到实现我的目标的解决方案 有没有办法在给定时期内按流派检索前100名艺术家? 这是我用来下载每周前200名的代码,但对我的目标毫无用处:Python 通过Spotify API获得前100名艺术家,python,dataset,spotify,Python,Dataset,Spotify,我正在做一个关于数据分析的大学项目,特别是,我试图分析Spotify上的听众在大流行之前和期间的行为 到目前为止,我下载了每周前200名,并用一个简单的脚本按州对其进行了分组,您可以在这里找到数据: 我还设法使用这些前200名检索每首歌曲和提取功能,发行日期ecc。。。使用SpotifyAPI 我读了这篇文章:很有趣。我想模仿他们在文章中的做法。例如,他们能够按流派检索前100名艺术家 我一直在寻找Spotify API和Spotify可用的数据集,但我找不到实现我的目标的解决方案 有没有办法在
import requests
import os
import time
path = os.getcwd()
states = ['br','it','gb','de','us','fr','es']
for state in states:
dir_path = os.path.join(path, state)
os.mkdir(dir_path)
for week in weeks:
csv_url = 'https://spotifycharts.com/regional/'+state+'/weekly/'+week+'/download'
req = requests.get(csv_url)
#print(req.status_code)
time.sleep(0.5)
if req.status_code == 200:
url_content = req.content
csv = ''+state+'_'+week+'.csv'
csv_path = os.path.join(dir_path, csv)
csv_file = open(csv_path, 'wb')
csv_file.write(url_content)
csv_file.close()
else:
print('error with the following file:'+str(csv_url))
其中,weeks
是一个字符串列表,其中包含请求中要下载的文件的文件名(以前使用另一个代码生成,为了清晰起见省略它),例如:
2016-12-23--2016-12-30
2016-12-30--2017-01-06
2017-01-06--2017-01-13
2017-01-13--2017-01-20
2017-01-20--2017-01-27
2017-01-27--2017-02-03
2017-02-03--2017-02-10
2017-02-10--2017-02-17
博客上说
我们收集了各流派前100名艺术家的MLs数据,按
Spotify跟踪计数
直接从官方获得图表是不可能的。Chartmetric,写博客的公司可能有一个他们不会透露的刮取算法,因为出售这些数据是他们的商业模式
提供艺术家的类型(及其追随者数量),因此如果您从其他来源获得艺术家图表(带有Spotify ID),您可以提取每个艺术家类型,并在每个类型中重新排列艺术家。这些类型可能需要根据您的需要重新分类
这将使用with with with and a data range作为主要查询参数(此处:年份:2000-2014
),并创建一个大多数受关注艺术家及其相应Spotify ID的数据库。这种黑客似乎不再有效,因为当我尝试使用自己的身份验证令牌时,不一定会得到排名结果
然后,为了获得每月听众(ML),博客提到。其中指出:
每月收听者是在音乐节期间播放您的音乐的唯一收听者
28天期限。此统计信息每天更新,并显示在您的
Spotify上的艺术家简介
同样,Spotify API无法提供此图,因此您需要创建一个艺术家页面,并使用比较选项为其他艺术家获取此图,或者每天在常规Spotify平台上刮取此图。除了简单的前200名图表之外,Spotify没有提供这些数据,这是一个遗憾,但我想这是他们生意的一部分