Php Curl是否从Spotify Insights下载CSV?
尝试从Spotify Fan Insights下载在浏览器设置下运行良好的CSV:Php Curl是否从Spotify Insights下载CSV?,php,csv,curl,libcurl,spotify,Php,Csv,Curl,Libcurl,Spotify,尝试从Spotify Fan Insights下载在浏览器设置下运行良好的CSV: https://artists.spotify.com/api/data/v1/artist/<URI>/timeline.csv https://artists.spotify.com/api/data/v1/artist//timeline.csv 然而,使用cURL获取数据的任何尝试都不会有结果。我知道URL需要一个身份验证令牌,我正在传递该令牌,但仍然没有结果。我尝试过传递cookie数据
https://artists.spotify.com/api/data/v1/artist/<URI>/timeline.csv
https://artists.spotify.com/api/data/v1/artist//timeline.csv
然而,使用cURL获取数据的任何尝试都不会有结果。我知道URL需要一个身份验证令牌,我正在传递该令牌,但仍然没有结果。我尝试过传递cookie数据、所有类型的头,以及介于两者之间的所有内容的组合
$agent= 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';
$path = "/tmp/spot_test.csv";
$fp = fopen($path, 'w+');
$cookie_file_path = "../../../../private/tmp/cookie.txt";
$ch=curl_init();
$url = "https://artists.spotify.com/api/data/v1/artist/<URI>/timeline.csv";
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,100);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
$auth_header = "Authorization: Bearer ". $accessToken;
curl_setopt($ch, CURLOPT_HTTPHEADER, array($auth_header,'Content-type: application/csv','Content-Disposition: attachment; filename=spot_test.csv','Pragma: no-cache','Expires: 0'));
$resp = curl_exec($ch);
curl_close($ch);
if (empty($resp)){
echo "Nothing returned from url.<br />";
} else {
echo $resp;
}
$agent='Mozilla/4.0(兼容;MSIE 6.0;Windows NT 5.1;SV1;.NET CLR 1.0.3705;.NET CLR 1.1.4322)';
$path=“/tmp/spot_test.csv”;
$fp=fopen($path,'w+');
$cookie_file_path=“../../../../private/tmp/cookie.txt”;
$ch=curl_init();
$url=”https://artists.spotify.com/api/data/v1/artist//timeline.csv";
curl_setopt($ch,CURLOPT_文件,$fp);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
curl\u setopt($ch,CURLOPT\u COOKIEFILE,$cookie\u file\u path);
curl_setopt($ch,CURLOPT_URL,$URL);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,100);
curl_setopt($ch,CURLOPT_USERAGENT,$agent);
$auth_header=“授权:持有人”$accessToken;
curl_setopt($ch,CURLOPT_HTTPHEADER,array($auth_header,'Content-type:application/csv','Content-Disposition:attachment;filename=spot_test.csv','Pragma:no cache','Expires:0');
$resp=curl_exec($ch);
卷曲关闭($ch);
如果(空($resp)){
echo“没有从url返回任何内容。
”;
}否则{
echo$resp;
}
返回页面上的空文件&“1”。有什么想法吗?将
CURLOPT\u RETURNTRANSFER
设置为true?尝试过了。它最初是在那里,用来代替用fopen
&CURLOPT_文件
写入文件。使用RETURNTRANSFER
code返回url未返回任何内容。