-1
次の単純なスニペットコードを使用してJSONオブジェクトをインポートし、特定のフィールドをリストに引き出します。ここでは、次のとおりです。Python jsonキーエラー
#Set Observations URL request for all observations within the Osa Pennisula, Costa Rica
query = urllib2.urlopen("http://api.inaturalist.org/v1/observations?nelat=8.60586&nelng=-83.44410&swlat=8.43066&swlng=-83.74073&per_page=1000&order=desc&order_by=created_at")
obSet = json.load(query)
#Find all common names for observations
for item in obSet['results']:
print item['taxon']['preferred_common_name']
URLはiNaturalist node.js
サービスへの呼び出しです。私は電話をかけるとき、私は次のような結果を得る:
Red Brocket
Gumbo Limbo
Northern Tamandua
Colubrids
Bats
Skippers
True Toads
Crested Owl
Tropical Screech-Owl
White-nosed Coati
Central American Squirrel Monkey
Thread-legged Bugs
Roadside Hawk
Barn Owl
Red Land Crab
Crested Caracar
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-255-6e709d365b1b> in <module>()
3
4 for item in obSet['results']:
----> 5 print item['taxon']['preferred_common_name']
6
7
KeyError: 'preferred_common_name'
をだから、奇妙だ - 私は、レスポンスが304の結果を持っていることを知っているが、コードは数をプリントアウトしてから爆破するようです。どうしてこれなの?!
OK - 私はこれが彼らの問題を解決したとして、上述の質問に編集内容を追加しました! –
@AnthonyW私の更新された答えを見て、それは両方のあなたの問題を解決します。 – DeepSpace
はいそうです。ありがとう! –