2012-09-26 28 views
7

有圖書館做這pyes和pyelasticsearch。 pyelasticsearch website看起來不錯,pyes採取其他方法,但也沒關係。從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

使用REST API與ElasticSearch接口的方法沒有任何問題。

Pyes和其他庫提供了一個REST API封裝器,以便您可以編寫Python代碼來反對自己構建JSON查詢。