0

そのため、trakt.tv の API の出力を検索し、特定の番組の情報のみを返す方法を学ぼうとしています。json出力は次のとおりです

[
  {
      "title": "NCIS",
      "year" : 2003,
      "url": "blah"
    },
   {   
       "title": "Jeffersons",
       "year" : 1902,
       "url": "notreally"
     }
]

:正しい書式設定のために編集されたコード。

NCIS というタイトルの情報だけを探しています。情報を取得する際に問題が発生しました。おそらく、私が見たすべてがjson.dumpまたはjson.loadsを扱っており、これを実行しようとしているからですdata = json.load(urllib2.urlopen(url))

私は基本的に、タイトルが NCIS と一致する場合にのみ show:0 を表示したいと考えています。方法がわかりません。

4

1 に答える 1

4

/search/showsAPI メソッドは、検索に一致する番組 (それぞれがマッピング) のリストを返します。

これらをループして、特定のタイトルに一致させることができます。

data = json.load(urllib2.urlopen(url))

for show in data:
    if show['title'] == 'NCIS':
        # matching show

または、ジェネレーター式を使用して、一致するショーを 1 つ取得することもできます。

try:
    ncis_show = next(show for show in data if show['title'] == 'NCIS')
except StopIteration:
    ncis_show = None  # not found
于 2013-03-01T19:17:35.370 に答える