2015-05-14 00:45:02 -07:00
|
|
|
# -*- encoding: utf-8 -*-
|
|
|
|
|
2016-02-13 09:14:30 -08:00
|
|
|
import requests
|
2021-11-16 01:55:47 -08:00
|
|
|
from scdl import CLIENT_ID, USER_AGENT
|
2016-02-13 09:14:30 -08:00
|
|
|
|
2015-05-09 15:51:22 -07:00
|
|
|
|
2016-04-17 06:00:53 -07:00
|
|
|
class Client():
|
2015-05-09 15:51:22 -07:00
|
|
|
|
2016-09-27 08:42:13 -07:00
|
|
|
def get_collection(self, url, token):
|
2016-09-27 11:06:15 -07:00
|
|
|
params = {
|
|
|
|
'client_id': CLIENT_ID,
|
|
|
|
'linked_partitioning': '1',
|
|
|
|
}
|
|
|
|
if token:
|
|
|
|
params['oauth_token'] = token
|
2016-02-13 09:14:30 -08:00
|
|
|
resources = list()
|
2016-01-31 05:16:20 -08:00
|
|
|
while url:
|
2021-11-16 01:55:47 -08:00
|
|
|
response = requests.get(url, params=params, headers={'User-Agent': USER_AGENT})
|
2016-09-27 08:42:13 -07:00
|
|
|
response.raise_for_status()
|
2016-02-13 09:14:30 -08:00
|
|
|
json_data = response.json()
|
|
|
|
if 'collection' in json_data:
|
|
|
|
resources.extend(json_data['collection'])
|
|
|
|
else:
|
|
|
|
resources.extend(json_data)
|
|
|
|
if 'next_href' in json_data:
|
|
|
|
url = json_data['next_href']
|
|
|
|
else:
|
2016-01-31 05:16:20 -08:00
|
|
|
url = None
|
2015-05-09 15:51:22 -07:00
|
|
|
return resources
|