Răsfoiți Sursa

Create RESTful API using Flask to serve search results

Frans Bergman 7 ani în urmă
părinte
comite
a306f80914
2 a modificat fișierele cu 23 adăugiri și 0 ștergeri
  1. 1 0
      server/requirements.txt
  2. 22 0
      server/wac/rest.py

+ 1 - 0
server/requirements.txt

@@ -1,3 +1,4 @@
 toml==0.9.2
 requests==2.18.1
 whoosh==2.7.4
+flask==0.12.2

+ 22 - 0
server/wac/rest.py

@@ -0,0 +1,22 @@
+#!/usr/bin/python3
+
+from flask import Flask
+from flask import jsonify
+from whoosh.qparser import MultifieldParser
+from whoosh import index
+
+from . import api
+
+app = Flask(__name__)
+
+ix = index.open_dir("data")
+
+@app.route("/search/<query>")
+def search(query):
+    with ix.searcher() as searcher:
+        query = MultifieldParser(["title", "description"], ix.schema).parse(query)
+        results = searcher.search(query, limit=10)
+        return jsonify([dict(r) for r in results])
+
+if __name__ == '__main__':
+    app.run()