Сlient for Manticore Search.
❗ WARNING: this is a development version of the client. The latest release's readme is https://github.com/manticoresoftware/manticoresearch-python/tree/9.0.0
Minimum Manticore Search version is >= 2.5.1 with HTTP protocol enabled.
*manticoresearch-python Manticore Search Python Compatibilitymanticoresearch-devel
dev
(latest development version) 3.4 or newer ✅ Fully Compatible 8.0.0 or newer 9.2.14 or newer 3.4 or newer ✅ Fully Compatible 6.0.0 to 8.0.0 9.2.14 or newer 3.4 or newer ⚠️ Partially Compatible 6.0.0 to 8.0.0 7.0.0 to 9.2.14 3.4 or newer ✅ Fully Compatible 6.0.0 or newer 6.2.1 to 7.0.0 3.4 or newer ⚠️ Partially Compatible 3.3.1 to 6.0.0 7.0.0 or newer 3.4 or newer ⚠️ Partially Compatible 3.3.1 to 6.0.0 6.2.1 to 7.0.0 3.4 or newer ✅ Fully Compatible 2.0.0 to 3.3.1 6.2.0 or newer 3.4 or newer ⚠️ Partially Compatible 2.0.0 to 3.3.1 4.2.1 to 6.2.0 3.4 or newer ✅ Fully Compatible 1.0.6 to 2.0.0 4.0.2 to 4.2.1 3.4 or newer ✅ Fully Compatible 1.0.5 to 1.0.6 4.0.2 to 4.2.1 2.7 or newer ⚠️ Partially Compatible 1.0.5 to 1.0.6 2.5.1 to 4.0.2 2.7 or newer ✅ Fully Compatible
If the python package is hosted on a repository, you can install directly using:
pip install git+https://github.com/manticoresoftware/manticoresearch-python.git
(you may need to run pip
with root permission: sudo pip install git+https://github.com/manticoresoftware/manticoresearch-python.git
)
Then import the package:
Install via Setuptools.
python setup.py install --user
(or sudo python setup.py install
to install the package for all users)
Then import the package:
Please follow the installation procedure and then run the following:
import manticoresearch from manticoresearch.rest import ApiException from pprint import pprint # Defining the host is optional and defaults to http://127.0.0.1:9308 # See configuration.py for a list of all supported configuration parameters. configuration = manticoresearch.Configuration( host = "http://127.0.0.1:9308" ) # Enter a context with an instance of the API client with manticoresearch.ApiClient(configuration) as api_client: # Create instances of API classes indexApi = manticoresearch.IndexApi(api_client) searchApi = manticoresearch.SearchApi(api_client) utilsApi = manticoresearch.UtilsApi(api_client) try: # Perform insert and search operations newDoc = {"title" : "Crossbody Bag with Tassel", "price": 19.85} insert_request = InsertDocumentRequest(index="products", doc=newDoc) indexApi.insert(insert_request) # Check out the structure of the autocreated 'products' table sql_response = utilsApi.sql('DESC products'); print("The response of UtilsApi->sql:\n") pprint(sql_response) newDoc = {"title" : "Pet Hair Remover Glove", "price": 7.99} insert_request = InsertDocumentRequest(index="products", doc=newDoc) indexApi.insert(insert_request) query_highlight = Highlight() query_highlight.fields = {"title":{}} search_query = SearchQuery(query_string="@title bag") search_request = SearchRequest(index="products", query=search_query, highlight=query_highlight) search_response = searchApi.search(search_request) print("The response of SearchApi->search:\n") pprint(search_response) # Alternatively, you can pass all request arguments as a complex JSON object indexApi.insert({"index": "products", "doc" : {"title" : "Crossbody Bag with Tassel", "price" : 19.85}}) indexApi.insert({"index": "products", "doc" : {"title" : "Pet Hair Remover Glove", "price" : 7.99}}) search_response = searchApi.search({"index": "products", "query": {"query_string": "@title bag"}, "highlight":{"fields":{"title":{}}}}) print("The response of SearchApi->search:\n") pprint(search_response) except ApiException as e: print("Exception when calling Api method: %s\n" % e)Documentation for API Endpoints
All URIs are relative to http://127.0.0.1:9308
Class Method HTTP request Description IndexApi bulk POST /bulk Bulk table operations IndexApi delete POST /delete Delete a document in a table IndexApi insert POST /insert Create a new document in a table IndexApi partial_replace POST /{table}/_update/{id} Partially replaces a document in a table IndexApi replace POST /replace Replace new document in a table IndexApi update POST /update Update a document in a table SearchApi autocomplete POST /autocomplete Performs an autocomplete search on a table SearchApi percolate POST /pq/{table}/search Perform reverse search on a percolate table SearchApi search POST /search Performs a search on a table UtilsApi sql POST /sql Perform SQL requestsEndpoints do not require authorization.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4