Tôi hiện đang nhận dữ liệu JSON từ API discogs (dữ liệu thẻ mp3) và muốn sắp xếp kết quả theo giá trị của khóa. Trong trường hợp này, tôi đang cố gắng lấy dữ liệu cho bài hát Guns n Roses và đầu ra có 1988 là dữ liệu đầu tiên trong khi dữ liệu thực sự có bản ghi từ năm 1987. Làm cách nào để sắp xếp dữ liệu này để tôi có thể truy cập dữ liệu được sắp xếp theo năm (cũ hơn đến mới nhất). Mã dưới đây sắp xếp theo một trong hai khóa hoặc giá trị nhưng đó không phải là những gì tôi dự định nhận được. Hãy giúp tôi.Sắp xếp dữ liệu JSON theo khóa giá trị
import json
import urllib2
request = urllib2.Request('http://api.discogs.com/database/search?sort=year&sort_order=asc&artist=%22Guns+N%27+Roses%22&track=%22Sweet+Child+O%27+Mine%22&format_exact=Album&type=master')
request.add_header('User-Agent','Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)')
request.add_header('Content-Type','application/json')
response = urllib2.urlopen(request)
json_raw= response.readlines()
json_object = json.loads(json_raw[0])
for row in json_object['results']:
try:
from operator import itemgetter
for k, v in sorted(row.items(), key=itemgetter(0)):
print k, v
except KeyError:
pass
Tôi muốn trợ giúp nếu bạn đưa vào mẫu dữ liệu JSON .. –
Theo giao diện của nó, bạn đang sử dụng [API này] (http://www.discogs.com/developers/resources/database/search-endpoint.html). –