mirror of
https://github.com/searxng/searxng
synced 2024-01-01 18:24:07 +00:00
Create query_strings.py
This commit is contained in:
parent
a983db0229
commit
7fd5e74ea9
23
searx/plugins/query_strings.py
Normal file
23
searx/plugins/query_strings.py
Normal file
@ -0,0 +1,23 @@
|
||||
import shlex, string
|
||||
|
||||
name = "query strings"
|
||||
description = 'adds site:, - and "" to searx'
|
||||
default_on = True
|
||||
|
||||
def on_result(request, search, result):
|
||||
q = search.search_query.query
|
||||
qs = shlex.split(q)
|
||||
spitems = [x.lower() for x in qs if ' ' in x]
|
||||
mitems = [x.lower() for x in qs if x.startswith('-')]
|
||||
siteitems = [x.lower() for x in qs if x.startswith('site:')]
|
||||
msiteitems = [x.lower() for x in qs if x.startswith('-site:')]
|
||||
url, title, content = result["url"].lower(), result["title"].lower(), (result.get("content").lower() if result.get("content") else '')
|
||||
if all(x not in title or content for x in spitems):
|
||||
return False
|
||||
if all(x in title or content for x in mitems):
|
||||
return False
|
||||
if all(x not in url for x in siteitems):
|
||||
return False
|
||||
if all(x in url for x in msiteitems):
|
||||
return False
|
||||
return True
|
Loading…
Reference in New Issue
Block a user