データを抽出するクローラーを構築していますが、データを取得したときにすべてを分類するのに苦労しています。私が使用することを期待していた dict キーは、探しているものを取得しないようです。「member_id」と「vote_position」を抽出したい。
以下の例は、「positions」キーを使用してプルしようとする試みを示しています。「positions」、「member_id」、「vote_position」を使用すると、すべて同じ KeyError が発生します。
さらに下に移動すると、 を使用したときの出力が表示されますprint data
。それでも、出力後に表示されるキーを使用すると、 print data
KeyError が発生します。
私はかなり困惑しています。どんな助けでも大歓迎です。
import urllib2
import json
api_key = '72c9a68****************************'
url = 'http://api.time.com/svc/politics/v3/us/legislative/blue/113/
json_obj = urllib2.urlopen(url)
data = json.load(json_obj)
print data['positions']
Traceback (most recent call last):
File "/Users/Owner/PycharmProjects/untitled2/1", line 8, in <module>
print data [positions]
NameError: name 'positions' is not defined
JSON データ:
"positions": [
{
"member_id": "A000055",
"vote_position": "Yes",
"dw_nominate": "0.466"
},
{
"member_id": "A000367",
"vote_position": "Yes",
"dw_nominate": "0.995"
},
簡単なprint data
結果:
{u'dw_nominate': u'-0.311', u'vote_position': u'Yes', u'member_id': u'B001242'}, {u'dw_nominate': u'0.793', u'vote_position': u'Yes', u'member_id': u'B001250'}, {u'dw_nominate': u'0.728', u'vote_position': u'Yes', u'member_id': u'B001273'}