2016-02-01 8 views
18

Verzeihen Sie mir, wenn dies recht einfach ist, aber ich habe Python 2.7 und Elasticsearch 2.1.1 und ich versuche nur einen IndexElasticsearch: Wie ein Index mit Python löschen

es.delete(index='researchtest', doc_type='test') 

mit zu löschen, aber das gibt mir

return func(*args, params=params, **kwargs) 
TypeError: delete() takes at least 4 arguments (4 given) 

ich habe auch versucht

es.delete_by_query(index='researchtest', doc_type='test',body='{"query":{"match_all":{}}}') 

aber ich bekomme

AttributeError: 'Elasticsearch' object has no attribute 'delete_by_query' 

Irgendeine Idee warum? Hat sich die API für 2.1.1 für Python geändert?

https://elasticsearch-py.readthedocs.org/en/master/api.html#elasticsearch.client.IndicesClient.delete

Antwort

30

Aus den Dokumenten, benutzen Sie diese Schreibweise:

from elasticsearch import Elasticsearch 
es = Elasticsearch() 

es.indices.delete(index='test-index', ignore=[400, 404]) 
+2

Dank! genau das, was ich brauchte – AbtPst

Verwandte Themen