2016-10-04 9 views
0

Я делаю запросы SPotify API внутри for loop, например, так:Python - Добавление элементов в список, делая HTTPS запросы внутри цикла

track_ids = [] 
#get track_ids 
for track in random.sample(pitchfork_tracks, 10): 
    results = sp.search(q=track, type='track') #here I call Spotify endpoint 
    items = results['tracks']['items'] 
    for t in items: 
     track_ids.append(t['uri']) 
return track_ids 

Я могу print каждый t хорошо, но если я пытаюсь returntrack_ids, консоль ничего мне не возвращает.

Log говорит мне:

2016-10-03 23:55:49 [requests.packages.urllib3.connectionpool] INFO: Starting new HTTPS connection (1): accounts.spotify.com 
2016-10-03 23:55:50 [requests.packages.urllib3.connectionpool] DEBUG: "POST /api/token HTTP/1.1" 200 None 
2016-10-03 23:55:50 [requests.packages.urllib3.connectionpool] INFO: Starting new HTTPS connection (1): api.spotify.com 
2016-10-03 23:55:50 [requests.packages.urllib3.connectionpool] DEBUG: "GET /v1/search?q=Rushes&limit=10&type=track&offset=0 HTTP/1.1" 200 None 
2016-10-03 23:55:50 [requests.packages.urllib3.connectionpool] INFO: Starting new HTTPS connection (1): api.spotify.com 
2016-10-03 23:55:51 [requests.packages.urllib3.connectionpool] DEBUG: "GET /v1/search?q=Opposite+House&limit=10&type=track&offset=0 HTTP/1.1" 200 None 
2016-10-03 23:55:51 [requests.packages.urllib3.connectionpool] INFO: Starting new HTTPS connection (1): api.spotify.com 

это выглядит как над началом и концом соединения и снова что-то делать с этим ... или я пропускаю что-то очевидное здесь?

как я могу это решить и сумею построить мой track_idslist?

+0

Что значит «это не работает»? Что вы получаете взамен и чего вы ожидаете? Что вы получаете, когда печатаете 't'? –

+0

Что означает «это не работает». ? – furas

+0

Пробовал ли вы печатать/регистрировать в своем цикле, чтобы увидеть, как выглядят данные, с которыми вы имеете дело? – idjaw

ответ

1

track_ids scope внутри внутри функция. Для списка печати вы можете сделать, как это

track_ids = yourfunction() 
print track_ids 

ИЛИ

вы можете сделать track_ids глобальный список и объявить его вне вашей функции.