Как найти любую информацию в результате elasticsearch

#python #elasticsearch

#python #elasticsearch

Вопрос:

Я использую python для интеграции Elasticsearch в свою программу. Я использую pycurl, и мне удается добавлять, изменять и удалять любые документы, но теперь я хотел бы проверить, существует ли один документ. Я написал короткий код, который отправляет запрос get, но мне не удается найти всю информацию, чем я хочу, потому что у меня эта ошибка:

Ошибка атрибута: объект ‘dict’ не имеет атрибута ‘find’

мой короткий код:

 #!/usr/bin/python                                                                                                                                        
import re
import pycurl
import json
import StringIO
from datetime import datetime, timedelta

retentionDays = 30

c = pycurl.Curl()
b = StringIO.StringIO()

c.setopt(c.URL, 'http://127.0.0.1:9200/twitter/tweet/_search?q=reference:24272605AAA')
c.setopt(pycurl.WRITEFUNCTION, b.write)
c.perform()

try:
    decoded = json.loads(b.getvalue())

    # pretty printing of json-formatted string                                                                                                           
    print json.dumps(decoded, sort_keys=True, indent=4)
    var = decoded['hits']
    print "JSON parsing example: ", decoded['hits']
    print  var.find(':0, ')

except (ValueError, KeyError, TypeError):
    print "JSON format error"
  

если кто-то может мне помочь.
Заранее спасибо

Комментарии:

1. Пожалуйста, обновите более подробный журнал ошибок.

2. какую информацию вы ищете? Также у dict есть метод get, но нет метода find. Таким образом, var.get("total") было бы возвращено 0, которое является значением

3. Большое вам спасибо за ваш ответ. Это работа

4. Не беспокойтесь, пожалуйста, использование get похоже на использование var[«total»] для доступа к значению, за исключением того, что оно не выдаст ошибку ключа, если оно не существует, по умолчанию оно не возвращает None, но вы можете передать ему свое собственное значение, если хотите, например, var.get («total», «No key») и т.д..