Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 通过Spotify API获得前100名艺术家_Python_Dataset_Spotify - Fatal编程技术网

Python 通过Spotify API获得前100名艺术家

Python 通过Spotify API获得前100名艺术家,python,dataset,spotify,Python,Dataset,Spotify,我正在做一个关于数据分析的大学项目,特别是,我试图分析Spotify上的听众在大流行之前和期间的行为 到目前为止,我下载了每周前200名,并用一个简单的脚本按州对其进行了分组,您可以在这里找到数据: 我还设法使用这些前200名检索每首歌曲和提取功能,发行日期ecc。。。使用SpotifyAPI 我读了这篇文章:很有趣。我想模仿他们在文章中的做法。例如,他们能够按流派检索前100名艺术家 我一直在寻找Spotify API和Spotify可用的数据集,但我找不到实现我的目标的解决方案 有没有办法在

我正在做一个关于数据分析的大学项目,特别是,我试图分析Spotify上的听众在大流行之前和期间的行为

到目前为止,我下载了每周前200名,并用一个简单的脚本按州对其进行了分组,您可以在这里找到数据:

我还设法使用这些前200名检索每首歌曲和提取功能,发行日期ecc。。。使用SpotifyAPI

我读了这篇文章:很有趣。我想模仿他们在文章中的做法。例如,他们能够按流派检索前100名艺术家

我一直在寻找Spotify API和Spotify可用的数据集,但我找不到实现我的目标的解决方案

有没有办法在给定时期内按流派检索前100名艺术家?

这是我用来下载每周前200名的代码,但对我的目标毫无用处:

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没有提供这些数据,这是一个遗憾,但我想这是他们生意的一部分