Cara Melakukan Koneksi ke ElasticSearch dengan Python 3

Pada tutorial Python kali ini, kita akan membuat koneksi sederhana ke server ElasticSearch. Kita akan menggunakan Python 3 sebagai basis. Yang kita gunakan dalam tutorial kali ini ada dua library python, yaitu elasticsearch dan requests.

untuk itu, silakan install keduanya dengan:

pip install elasticsearch

pip install requests

setelah itu buat sebuah file dengan nama elasticsearch.py, tuliskan:

import sys
import sys

import elasticsearch


class ElasticsearchConnection:

kemudian buat variabel koneksinya:

def __init__(self, es_host,
                 es_auth_user, es_auth_password):
        self.es_host = es_host
        self.es_auth_user = es_auth_user
        self.es_auth_password = es_auth_password

dan bagian untuk connect ke server elasticsearch sendiri tuliskan:

def get_elasticsearch_client(self):
        try:
            elasticsearch_client = elasticsearch.Elasticsearch([self.es_host], http_auth=self.es_auth_user + ":" + self.es_auth_password,
                                                               connection_class=elasticsearch.RequestsHttpConnection,                                                       timeout=180)

            return elasticsearch_client
        except Exception as ex:
            print("Error:", ex)
            return None

if __name__ == "__main__":
    ES_AUTH_USER = sys.argv[1]
    ES_AUTH_PASSWORD = sys.argv[2]
    ES_HOST = sys.argv[3]
    db_connection = ElasticsearchConnection(ES_HOST)
    elasticsearch_client = db_connection.get_elasticsearch_client

atau versi lengkapnya:

import sys
import sys

import elasticsearch


class ElasticsearchConnection:
    def __init__(self, es_host,
                 es_auth_user, es_auth_password):
        self.es_host = es_host
        self.es_auth_user = es_auth_user
        self.es_auth_password = es_auth_password

    def get_elasticsearch_client(self):
        try:
            elasticsearch_client = elasticsearch.Elasticsearch([self.es_host], http_auth=self.es_auth_user + ":" + self.es_auth_password,
                                                               connection_class=elasticsearch.RequestsHttpConnection,                                                       timeout=180)

            return elasticsearch_client
        except Exception as ex:
            print("Error:", ex)
            return None


if __name__ == "__main__":
    ES_AUTH_USER = sys.argv[1]
    ES_AUTH_PASSWORD = sys.argv[2]
    ES_HOST = sys.argv[3]
    db_connection = ElasticsearchConnection(ES_HOST)
    elasticsearch_client = db_connection.get_elasticsearch_client

dan silakan coba script ini dengan:

python3 elasticsearch.py

Wagiman Wiryosukiro

Petani Sistem Informasi, tukang las plugin & themes Wordpress. Co-Founder SistemInformasi.biz. Saat ini aktif sebagai Developer & kontributor di OpenMandriva Linux.

You may also like...

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: