From 5ffbc1172738e8ee26c934f4a82d2d3bbc3a5b37 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sun, 20 Jan 2019 00:24:49 +0100 Subject: Use Manticorsearch JSON API instead of custom search API The migration is due to the fact that python use far more ressources that a simple JSON POST request directly on the Manticorsearch server. --- README.md | 49 +++++++++++++++++++++++++++++++++++-------------- 1 file changed, 35 insertions(+), 14 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index f8bec01..3d63946 100644 --- a/README.md +++ b/README.md @@ -18,14 +18,13 @@ file)! ## Sphinx-search / Manticore-search -You can use [Sphinx-search](http://sphinxsearch.com/) but it's recommand to use -[Manticore-search](https://manticoresearch.com/) since the last version of -Sphinx-search is ditribued in closed-source instead of open-source (for -version 3.x). +You must use [Manticore-search](https://manticoresearch.com/) because of the +usage of the JSON search API in the searx engines. -All explication is for Manticore-search for the moment but at many time the -term `sphinx` is used in code because Manticore-search want to keep a -compatibility with Sphinx-search. +But you can use [Sphinx-search](http://sphinxsearch.com/) if you don't want to +use the JSON search API. You need to know, as of January 2019, the last +version of Sphinx-search is distribued in closed-source instead of open-source +(for versions 3.x) # Configuration @@ -34,12 +33,10 @@ compatibility with Sphinx-search. The database used for this project is PostgreSQL, you can update login information in `config.py` file. -## Sphinx-search / Manticore-search +## Manticore-search The configuration for this is in `sphinx_search.conf` file. For update this -file please view documentation of -[Sphinx-search](http://sphinxsearch.com/docs/manual-2.3.2.html) or -[Manticore-search](https://docs.manticoresearch.com). +file please view documentation [Manticore-search](https://docs.manticoresearch.com). Keep in mind you must keep up to date the file `config.py` in accordance with the `sphinx_search.conf` file. @@ -91,12 +88,36 @@ You can now launch the server! python app.py ``` -For start searching send `GET` request to the following adresse (without `<` and -`>`): +For start searching send a `POST` request with the manticoresearch json API, +for example: + +``` +http POST 'http://localhost:8080/json/search' < mysearch.json +``` + +This is the content of the `mysearch.json`: + ``` -127.0.0.1:5000/?search=&index= +{ + "index": "neodarznet", + "query": { "match": { "content": "Livet" } }, + "highlight": + { + "fields": + { + "content": {}, + "url": {}, + "title": {} + }, + "pre_tags": "_", + "post_tags": "_", + } +} ``` +You can find more information about the HTTP sear API avaiblable in the +[Manticores-earch documentation](https://docs.manticoresearch.com/latest/html/httpapi_reference.html) + Resultat are in json format. If you whant to know witch website is indexed, search in the file [sphinx_search.conf](https://git.khaganat.net/neodarz/khanindexer/blob/master/sphinx_search.conf) all the line who start by `index`. -- cgit v1.2.1