Просмотр исходного кода

[enh] central html escaping of results

Adam Tauber 8 лет назад
Родитель
Сommit
ef2ef7974a
1 измененных файлов: 4 добавлений и 3 удалений
  1. 4
    3
      searx/webapp.py

+ 4
- 3
searx/webapp.py Просмотреть файл

40
     logger.critical("cannot import dependency: pygments")
40
     logger.critical("cannot import dependency: pygments")
41
     from sys import exit
41
     from sys import exit
42
     exit(1)
42
     exit(1)
43
-
43
+from cgi import escape
44
 from datetime import datetime, timedelta
44
 from datetime import datetime, timedelta
45
 from urllib import urlencode
45
 from urllib import urlencode
46
 from urlparse import urlparse, urljoin
46
 from urlparse import urlparse, urljoin
433
     for result in results:
433
     for result in results:
434
         if output_format == 'html':
434
         if output_format == 'html':
435
             if 'content' in result and result['content']:
435
             if 'content' in result and result['content']:
436
-                result['content'] = highlight_content(result['content'][:1024], search_query.query.encode('utf-8'))
437
-            result['title'] = highlight_content(result['title'], search_query.query.encode('utf-8'))
436
+                result['content'] = highlight_content(escape(result['content'][:1024]),
437
+                                                      search_query.query.encode('utf-8'))
438
+            result['title'] = highlight_content(escape(result['title']), search_query.query.encode('utf-8'))
438
         else:
439
         else:
439
             if result.get('content'):
440
             if result.get('content'):
440
                 result['content'] = html_to_text(result['content']).strip()
441
                 result['content'] = html_to_text(result['content']).strip()