diadia

興味があることをやってみる。自分のメモを残しておきます。

elasticsearch python コードスニペット

接続して検索

from elasticsearch import Elasticsearch
from elasticsearch_dsl import connections, Search
from elasticsearch_dsl import Q
es = connections.create_connection(hosts=['localhost'], port=9200)
s = Search(using=es, index="animal", doc_type="_doc")
s.query = Q("match_all", **{})
res = s.execute()
for doc in res:
    print(doc)

検索件数を指定する

extra(size=x)で検索数を指定できる
(elasticsearch_dsl/search.pyを見ると色々わかる)

from elasticsearch import Elasticsearch
from elasticsearch_dsl import connections, Search
from elasticsearch_dsl import Q
es = connections.create_connection(hosts=['localhost'], port=9200)
s = Search(using=es, index="animal", doc_type="_doc").extra(size=1)
s.query = Q("match_all", **{})
res = s.execute()
for doc in res:
    print(doc)