Browse Source

External bang: bug fix: URL encode the query so "!!g 1+1" works as intended

Alexandre FLAMENT 2 years ago
parent
commit
2af1a6f547
1 changed files with 2 additions and 1 deletions
  1. 2 1
      searx/external_bang.py

+ 2 - 1
searx/external_bang.py

@@ -1,5 +1,6 @@
 # SPDX-License-Identifier: AGPL-3.0-or-later
 
+from urllib.parse import quote_plus
 from searx.data import EXTERNAL_BANGS
 
 LEAF_KEY = chr(16)
@@ -39,7 +40,7 @@ def get_bang_definition_and_ac(external_bangs_db, bang):
 
 def resolve_bang_definition(bang_definition, query):
     url, rank = bang_definition.split(chr(1))
-    url = url.replace(chr(2), query)
+    url = url.replace(chr(2), quote_plus(query))
     if url.startswith('//'):
         url = 'https:' + url
     rank = int(rank) if len(rank) > 0 else 0