aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorneodarz <neodarz@neodarz.net>2019-01-18 23:59:24 +0100
committerneodarz <neodarz@neodarz.net>2019-01-18 23:59:24 +0100
commit0541eec0c82ae5a951cc73d65e17744e68f2e9c4 (patch)
tree8b59adc07bb064438e399783488145cf4fc42b2e
parent47c6942dd4128b592b7de82b2fd388030880fca6 (diff)
downloadryzomcore_searx-0541eec0c82ae5a951cc73d65e17744e68f2e9c4.tar.xz
ryzomcore_searx-0541eec0c82ae5a951cc73d65e17744e68f2e9c4.zip
Add khanindex nevrax search engine
-rwxr-xr-xinstall.sh1
-rw-r--r--src/khanindexer-nevrax.py50
-rw-r--r--src/settings.yml5
3 files changed, 56 insertions, 0 deletions
diff --git a/install.sh b/install.sh
index 8202e6d..0508dcb 100755
--- a/install.sh
+++ b/install.sh
@@ -11,6 +11,7 @@ ln -s ../../../src/forgeryzom.py searx/searx/engines/forgeryzom.py
ln -s ../../../src/ryzomcoreConfluence.py searx/searx/engines/ryzomcoreConfluence.py
ln -s ../../../src/RyzomForum.py searx/searx/engines/RyzomForum.py
ln -s ../../../src/khanindexer.py searx/searx/engines/khanindexer.py
+ln -s ../../../src/khanindexer-nevrax.py searx/searx/engines/khanindexer-nevrax.py
cp src/settings.yml searx/searx/settings.yml
virtualenv venv -p python2.7
source venv/bin/activate
diff --git a/src/khanindexer-nevrax.py b/src/khanindexer-nevrax.py
new file mode 100644
index 0000000..e5dc66d
--- /dev/null
+++ b/src/khanindexer-nevrax.py
@@ -0,0 +1,50 @@
+# khanindexer
+#
+# @website https://git.khaganat.net/neodarz/khanindexer
+#
+# @results JSON
+# @stable yes
+# @parse (general) url, title, content
+
+from urllib import urlencode
+import json
+
+# engine dependent config
+categories = ['general'] # TODO , 'images', 'music', 'videos', 'files'
+paging = False
+language_support = False
+number_of_results = 5
+
+# search-url
+base_url = 'http://127.0.0.1:5000/?index=nevrax'
+search_url = '&{query}'
+
+
+# do search-request
+def request(query, params):
+
+ params['url'] = base_url +\
+ search_url.format(query=urlencode({'search': query}))
+
+ print(params['url'])
+ return params
+
+
+# get response from search-request
+def response(resp):
+ results = []
+
+ datas = json.loads(resp.text)
+
+ if not 'error' in datas:
+ for el in datas:
+ results.append({
+ 'title': el['title'],
+ 'content': el['excerpts'][0],
+ 'url': el['url']
+ })
+ else:
+ print("ERROR:Search server: "+str(datas['msg']))
+
+ # return results
+ return results
diff --git a/src/settings.yml b/src/settings.yml
index de6a2c4..af64618 100644
--- a/src/settings.yml
+++ b/src/settings.yml
@@ -73,6 +73,11 @@ engines:
engine: khanindexer
shortcut: kh
+ - name: khanindexer-nevrax
+ engine: khanindexer-nevrax
+ shortcut: khn
+
+
locales:
en : English