@@ -25,7 +25,6 @@ from urlparse import urlparse
2525from searx import settings
2626import ConfigParser
2727import sys
28−import re
2928from datetime import datetime
3029
3130engine_dir = dirname(realpath(__file__))
@@ -106,31 +105,6 @@ def make_callback(engine_name, results, suggestions, callback, params):
106105 results[engine_name] = cb_res
107106 return process_callback
108107
109−def highlight_content(content, query):
110−
111− if not content:
112− return None
113− # ignoring html contents
114− # TODO better html content detection
115− if content.find('<') != -1:
116− return content
117−
118− query = query.decode('utf-8')
119− if content.lower().find(query.lower()) > -1:
120− query_regex = u'({0})'.format(re.escape(query))
121− content = re.sub(query_regex, '<b>\\1</b>', content, flags=re.I | re.U)
122− else:
123− regex_parts = []
124− for chunk in query.split():
125− if len(chunk) == 1:
126− regex_parts.append(u'\W+{0}\W+'.format(re.escape(chunk)))
127− else:
128− regex_parts.append(u'{0}'.format(re.escape(chunk)))
129− query_regex = u'({0})'.format('|'.join(regex_parts))
130− content = re.sub(query_regex, '<b>\\1</b>', content, flags=re.I | re.U)
131−
132− return content
133−
134108def score_results(results):
135109 flat_res = filter(None, chain.from_iterable(izip_longest(*results.values())))
136110 flat_len = len(flat_res)
@@ -218,8 +192,6 @@ def search(query, request, selected_engines):
218192 results = score_results(results)
219193
220194 for result in results:
221− if 'content' in result:
222− result['content'] = highlight_content(result['content'], query)
223195 for res_engine in result['engines']:
224196 engines[result['engine']].stats['score_count'] += result['score']
225197