on master help sign in
[mod] scoring mods
commitca0800306f0839ce5dbc1c53d2f07b7a515fc79b authorasciimoo <asciimoo@gmail.com> dateSun 27 Oct 2013, 19:06 (13 years ago) parent21e9c87
1 file changed+2−1
searx/engines/__init__.py+2−1
searx/engines/__init__.py+2−1
@@ -131,12 +131,13 @@ def search(query, request, selected_categories):
131131 engines[engine_name].stats['result_count'] += len(engine_results)
132132 flat_res = filter(None, chain.from_iterable(izip_longest(*results.values())))
133133 flat_len = len(flat_res)
134+ engines_len = len(selected_engines)
134135 results = []
135136 # deduplication + scoring
136137 for i,res in enumerate(flat_res):
137138 res['parsed_url'] = urlparse(res['url'])
138139 res['engines'] = [res['engine']]
139− score = (flat_len - i - flat_len%len(engines))*settings.weights.get(res['engine'], 1)
140+ score = int((flat_len - i)/engines_len)*settings.weights.get(res['engine'], 1)
140141 duplicated = False
141142 for new_res in results:
142143 if res['parsed_url'].netloc == new_res['parsed_url'].netloc and\