加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何在bash脚本中下载带有访问令牌的私有Soundcloud轨道

发布时间:2020-12-16 01:58:21 所属栏目:安全 来源:网络整理
导读:我用以下 python代码生成了一个Soundcloud轨道id的列表: import soundcloudimport urllibclient = soundcloud.Client(client_id='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',client_secret='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',username='XXXXXXXXXXXXXXXXXXXXXXXX
我用以下 python代码生成了一个Soundcloud轨道id的列表:

import soundcloud
import urllib

client = soundcloud.Client(client_id='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',client_secret='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',username='XXXXXXXXXXXXXXXXXXXXXXXXXX',password='XXXXXXXXXXXXXXXXXX')

f=open('soundcloud-track-ids','w+')

count = 0
while count < 6000:
    tracks = client.get('/me/tracks',limit=200,offset=count)
    for track in tracks:
        print >>f,track.id,"t",track.title .encode('utf-8')
    count += 200

f.close()

然后我运行一个bash脚本将整个存档备份到硬盘驱动器的内容:

#!/bin/bash

SAVEIFS=$IFS
IFS=$(echo -en "nb")

while read line; do
    if [ ! -f /mnt/drobo_1/Soundcloud/$(echo $line | cut -f 2- | sed 's,/,,g').mp3 ];     then
        wget https://api.soundcloud.com/tracks/"$(echo $line | awk '{print $1}')"/download?oauth_token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 
        -O /mnt/drobo_1/Soundcloud/"$(echo $line | cut -f 2- | sed 's,g').mp3"
    fi
done < ./soundcloud-track-ids

IFS=$SAVEIFS

几乎所有的5317首曲目都是私有的,而且大多数都是没有问题的下载,但是大约有600首曲目无法下载,并出现以下错误:

--2015-01-05 12:46:09--  https://api.soundcloud.com/tracks/152288957/download?oauth_token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Resolving api.soundcloud.com (api.soundcloud.com)... 93.184.220.127
Connecting to api.soundcloud.com (api.soundcloud.com)|93.184.220.127|:443... connected.
HTTP request sent,awaiting response... 404 Not Found
2015-01-05 12:46:10 ERROR 404: Not Found.

有谁知道错误是什么?

解决方法

这404错误表明在SoundCloud结束时无法找到该文件.这可能是SoundCloud的速率限制器这样做,防止你如此锤击它.

见https://developers.soundcloud.com/docs/api/terms-of-use#quotas

如果您稍后尝试这些失败的下载,它们是否有效?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读