2012-09-26 6 views
7

はpyesとpyelasticsearchこれを行うためのライブラリにあります。 pyelasticsearch websiteはよさそうだ、とpyesは、他のアプローチを取るだけでなく、okです。一方でpythonからelasticsearchをクエリする方が良いですか?

このコードが動作すると、それは非常に簡単です。

import urllib2 as urllib 
import json 
import pprint 

query = { 
    "from":0, 
    "size":10, 
    "query":{ 
     "field" : { 
      "name" : "david" 
     } 
    }, 
    "sort":[ 
     {"name":"asc"}, 
     {"lastName":"asc"} 
    ] 
} 

query = json.dumps(query) 
response = urllib.urlopen(
    'http://localhost:9200/users/users/_search', 
    query 
) 

result = json.loads(response.read()) 

pprint.pprint(result) 

だから私はライブラリのトリックを学ぶのではなく、単純なコードを使うことを考えています。

+0

これは...人々は一般的にurllib2.urlopen使用していますが...私はそれはいくつかのurllibは問題を解決すると思う... –

+0

@JoranBeasley結構です、urllib2のが使用されています。 – John

+0

ああええと...以前は知らなかった –

答えて

7

ElasticSearchとインタフェースするREST APIを使用してのあなたのアプローチは何も問題はありません。 JSONは自分自身を照会構築に反対するとして、あなたはPythonのコードを書くことができるように

Pyesと他のライブラリは、RESTのAPIのラッパーを提供しています。

関連する問題