У меня есть следующая структура:
mappings": {
"go": {
"_ttl": {something goes here},
"symbol": {},
"associationType.keyword": {},
"go_genes": {},
"go_species.keyword": {},
"symbol.autocomplete": {},
"primaryId": {},
"href.keyword": {},
"name_key": {},
"symbol.sort": {},
"name_key.keyword": {},
"go_type.keyword": {},
Теперь я заинтересован в том, чтобы извлечь что-то вроде этого:
mappings.go.-ttl
mappings.go.symbol
mappings.go.geo_genes
.....
Вот код, который я написал, но он дает мне только «go» и другие узлы, которые находятся в той же позиции, что и go, которые не показаны на рисунке. Как я могу изменить его, чтобы получить желаемый результат, как описано в обители:
index = "site_index_stage"
elastic_url = "http://localhost:9200"
mapping_fields_request = "_mapping/field/*"
mapping_fields_url = "/".join([elastic_url, index, mapping_fields_request])
response = requests.get(mapping_fields_url)
print(response)
data = response.content.decode()
parsed_data = json.loads(data)
for key in parsed_data[index]['mappings']:
print(key)