diff --git a/requirements-dev.txt b/requirements-dev.txt index 2e93572d8..954976104 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -21,4 +21,5 @@ yamllint==1.29.0 wlc==1.13 coloredlogs==15.0.1 requests -markdown \ No newline at end of file +markdown +textrank4zh \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 0cff50be3..36497ecfe 100644 --- a/requirements.txt +++ b/requirements.txt @@ -17,4 +17,5 @@ markdown-it-py==2.1.0 typing_extensions==4.5.0 fasttext-predict==0.9.2.1 requests -markdown \ No newline at end of file +markdown +textrank4zh \ No newline at end of file diff --git a/searx/webapp.py b/searx/webapp.py index 23d09b54f..183e7edff 100755 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -17,6 +17,7 @@ import requests import markdown import re import datetime +from textrank4zh import TextRank4Keyword, TextRank4Sentence from timeit import default_timer from html import escape @@ -650,6 +651,16 @@ def health(): return Response('OK', mimetype='text/plain') +@app.route('/textrank', methods=['POST']) +def textrank(): + res = [] + text = request.form.get('text') + tr4s = TextRank4Sentence() + tr4s.analyze(text=text, lower=True, source = 'all_filters') + for item in tr4s.get_key_sentences(num=15): + res.append(item.sentence) + return Response(json.dumps(res), mimetype='application/json') + @app.route('/search', methods=['GET', 'POST']) def search(): """Search query in q and return results. diff --git a/searx/webapp1.py b/searx/webapp1.py index 23d09b54f..183e7edff 100644 --- a/searx/webapp1.py +++ b/searx/webapp1.py @@ -17,6 +17,7 @@ import requests import markdown import re import datetime +from textrank4zh import TextRank4Keyword, TextRank4Sentence from timeit import default_timer from html import escape @@ -650,6 +651,16 @@ def health(): return Response('OK', mimetype='text/plain') +@app.route('/textrank', methods=['POST']) +def textrank(): + res = [] + text = request.form.get('text') + tr4s = TextRank4Sentence() + tr4s.analyze(text=text, lower=True, source = 'all_filters') + for item in tr4s.get_key_sentences(num=15): + res.append(item.sentence) + return Response(json.dumps(res), mimetype='application/json') + @app.route('/search', methods=['GET', 'POST']) def search(): """Search query in q and return results.