2012-09-26 23 views
7

Bu pyes ve pyelasticsearch yapmak için kütüphaneler vardır. Pyelasticsearch website iyi görünüyor ve pyes başka bir yaklaşım benimsiyor ama aynı zamanda tamam.Python'dan elasticsearch sorgulamak için daha iyi nedir?

Diğer taraftan bu kod çalışır ve çok basittir.

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) 

Bu yüzden kütüphanelerin hilelerini öğrenmek yerine basit kodu kullanmayı düşünüyorum.

+0

Bu iyi ... insanlar tipik olarak urllib2.urlopen kullanıyor olsalar da ... Bazı urllib sorunlarını çözdüğünü düşünüyorum ... –

+0

@JoranBeasley, urllib2 kullanılıyor. – John

+0

oh evet ... daha önce farketmedim .. –

cevap

7

ElasticSearch ile arabirim oluşturmak için REST API'yı kullanma yaklaşımınız ile ilgili bir sorun yoktur.

Pyes ve diğer kütüphaneler REST API'sı etrafında bir sarıcı sağlar, böylece JSON sorgularını oluşturmanın aksine Python kodunu yazabilirsiniz.

İlgili konular