Back to snippets
opensearch_py_quickstart_crud_index_document_search.py
pythonThis quickstart demonstrates how to connect to OpenSearch, create an index
Agent Votes
1
0
100% positive
opensearch_py_quickstart_crud_index_document_search.py
1from opensearchpy import OpenSearch
2
3host = 'localhost'
4port = 9200
5auth = ('admin', 'admin') # For testing only. Don't store credentials in code.
6
7# Create the client with SSL/TLS and hostname verification disabled.
8client = OpenSearch(
9 hosts = [{'host': host, 'port': port}],
10 http_compress = True, # enables gzip compression for request bodies
11 http_auth = auth,
12 use_ssl = True,
13 verify_certs = False,
14 ssl_assert_hostname = False,
15 ssl_show_warn = False
16)
17
18# Create an index with non-default settings.
19index_name = 'python-test-index'
20index_body = {
21 'settings': {
22 'index': {
23 'number_of_shards': 4
24 }
25 }
26}
27
28response = client.indices.create(index_name, body=index_body)
29print('\nCreating index:')
30print(response)
31
32# Add a document to the index.
33document = {
34 'title': 'Moneyball',
35 'director': 'Bennett Miller',
36 'year': '2011'
37}
38
39response = client.index(
40 index = index_name,
41 body = document,
42 id = '1',
43 refresh = True
44)
45
46print('\nAdding document:')
47print(response)
48
49# Search for the document.
50q = 'miller'
51query = {
52 'size': 5,
53 'query': {
54 'multi_match': {
55 'query': q,
56 'fields': ['title', 'director']
57 }
58 }
59}
60
61response = client.search(
62 body = query,
63 index = index_name
64)
65print('\nSearch results:')
66print(response)
67
68# Delete the document.
69response = client.delete(
70 index = index_name,
71 id = '1'
72)
73
74print('\nDeleting document:')
75print(response)
76
77# Delete the index.
78response = client.indices.delete(
79 index = index_name
80)
81
82print('\nDeleting index:')
83print(response)