참깨에서 얻은 SPARQL 쿼리의 결과를 구문 분석하려고합니다. 아래에서 관련 부분 인 샘플 코드를 발견했으며 아래에 결과를 표시하고 있습니다.RDF 쿼리 결과에서 JSON 개체 인쇄/구문 분석
(response, content) = httplib2.Http().request(endpoint, 'POST', urllib.urlencode(params), headers=headers)
print "Response %s" % response.status
results = json.loads(content)
print "\n".join([result['type']['value'] for result in results['results']['bindings']])
{
"head": {
"vars": [ "costar", "movie" ]
},
"results": {
"bindings": [
{
"costar": { "type": "uri", "value": "http:\/\/rdf.freebase.com\/ns\/en.connie_nielsen" },
"movie": { "type": "uri", "value": "http:\/\/rdf.freebase.com\/ns\/en.basic_2003" }
},
{
"costar": { "type": "uri", "value": "http:\/\/rdf.freebase.com\/ns\/en.timothy_daly" },
"movie": { "type": "uri", "value": "http:\/\/rdf.freebase.com\/ns\/en.basic_2003" }
},
]
}
}
그러나 나는이 오류를 얻을 :
Traceback (most recent call last):
File "C:\Software\rdflib\movieSparqlQuery.py", line 45, in <module>
print "\n".join([result['type']['value'] for result in results['results']['b
indings']])
KeyError: 'type'
Press any key to continue . . .
가 어떻게 "인쇄"문을 변경할 수 있습니다?
http://rdf.freebase.com/ns/en.connie_nielsen http://rdf.freebase.com/ns/en.basic_2003
나중에 내가 네임 스페이스를 제거합니다 : 내가보고 싶은
같은 줄에 공연자와 영화 이름 같은 것입니다.
감사합니다.
감사합니다. 아직 파이썬에서 JSON을 사용해야합니다. XML 및 다른 언어에 익숙합니다. – NealWalters