格式化elasticsearch-py的输出

Dro*_*ror 6 python elasticsearch pyelasticsearch

我正在尝试使用python客户端elasticsearch.这是一个最小的例子:

import logging
logging.basicConfig()

from elasticsearch import Elasticsearch as ES

print "Setup connection..."
es=ES(['localhost:8080'])
print "Done!"

print "Count number of users..."
print es.count(index='users')
Run Code Online (Sandbox Code Playgroud)

输出是:

{u'count': 836780, u'_shards': {u'successful': 5, u'failed': 0, u'total': 5}}
Run Code Online (Sandbox Code Playgroud)

我有两个问题:

  1. 我如何摆脱u'(u后面是单引号)?
  2. 如何提取计数值?我想我可以做字符串操作,但这听起来像是错误的方式.... 答案:如果输出保存到res,那么res['count'] returns the number836780`.

pro*_*mer 4

elasticsearch.py​​ 将json响应转换为python的字典,以便于提取信息。

IE

{u'count': 836780, u'_shards': {u'successful': 5, u'failed': 0, u'total': 5}}
Run Code Online (Sandbox Code Playgroud)

是Python字典。

如果你想把它放在 json 结构中,那么你可以这样做,

json.dumps()
Run Code Online (Sandbox Code Playgroud)

多看看Python