Echones API から 100 曲の曲データを取得しようとしています。CSV ファイルに各曲の ID があります。ID を読み取り、API URL に追加し、データを新しい CSV に書き込むスクリプトを作成しようとしていますが、少し問題があります。
ID コードをプルして、ループ内の URL に追加する良い方法はありますか? これは私がこれまでに持っているものです。IDをURLに追加する方法/どこに配置するかわかりません。
import urllib2
import json
import csv
from time import sleep
outfile_path='/Users/path/to/file.csv'
api_url = 'http://developer.echonest.com/api/v4/song/profile?'
API_KEY = ''
writer = csv.writer(open(outfile_path))
with open('/Users/path/to/file.csv') as f:
for row in csv.DictReader(f):
song_id = row['id']
qs = urllib.urlencode({"api_key": API_KEY,
"bucket": "audio_summary",
"id": song_id})
url = '{}?{}'.format(API_URL, qs)
parsed_json = json.load(resource)
for song in parsed_json['results']:
row = []
writer.writerow({k: v.encode('utf-8') for k, v in song.items()})
sleep(5)