Loading searx/templates/etheme/result_templates/images.html +1 −1 Original line number Original line Diff line number Diff line <a href="{{ result.img_src }}" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %} data-url="{{ result.url }}" id="show_image_view_modal" class="img-thumb-link"> <a href="{{ result.img_src }}" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %} data-url="{{ result.url }}" id="show_image_view_modal" class="img-thumb-link"> <img src="{% if result.thumbnail_src %} {{ result.thumbnail_src }}{% else %}{{ result.img_src }}{% endif %}" alt="{{ result.title|striptags }}" title="{{ result.title|striptags }}" class="img-thumbnail"> <img src="{% if result.thumbnail_src %}{{ image_proxify(result.thumbnail_src) }}{% else %}{{ image_proxify(result.img_src) }}{% endif %}" alt="{{ result.title|striptags }}" title="{{ result.title|striptags }}" class="img-thumbnail"> <div class="hidden">{{ result.content }}</div> <div class="hidden">{{ result.content }}</div> </a> </a> searx/templates/etheme/result_templates/videos.html +2 −2 Original line number Original line Diff line number Diff line Loading @@ -2,7 +2,7 @@ <div class="result-content"> <div class="result-content"> <a class="thumbnail" href="{{ result.url }}" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %}> <a class="thumbnail" href="{{ result.url }}" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %}> <img src="{{ result.thumbnail }}" alt="{{ result.title|striptags }} {{ result.engine }}" /> <img src="{{ image_proxify(result.thumbnail) }}" alt="{{ result.title|striptags }} {{ result.engine }}" /> </a> </a> <div> <div> {{ result_header(result, favicons, False) }} {{ result_header(result, favicons, False) }} Loading searx/webapp.py +1 −1 Original line number Original line Diff line number Diff line Loading @@ -718,7 +718,7 @@ def search(): if output_format == 'json': if output_format == 'json': response = webutils.get_json_response(search_query, result_container) response = webutils.get_json_response(search_query, result_container, image_proxify) return Response(response, mimetype='application/json') return Response(response, mimetype='application/json') if output_format == 'csv': if output_format == 'csv': Loading searx/webutils.py +17 −5 Original line number Original line Diff line number Diff line Loading @@ -11,7 +11,7 @@ import inspect import itertools import itertools import json import json from datetime import datetime, timedelta from datetime import datetime, timedelta from typing import Iterable, List, Tuple, Dict, TYPE_CHECKING from typing import Callable, Iterable, List, Tuple, Dict, TYPE_CHECKING from io import StringIO from io import StringIO from codecs import getincrementalencoder from codecs import getincrementalencoder Loading Loading @@ -158,13 +158,25 @@ class JSONEncoder(json.JSONEncoder): return super().default(o) return super().default(o) def get_json_response(sq: SearchQuery, rc: ResultContainer) -> str: def get_json_response(sq: SearchQuery, rc: ResultContainer, fip: Callable) -> str: """Returns the JSON string of the results to a query (``application/json``)""" """Returns the JSON string of the results to a query (``application/json``)""" results = rc.number_of_results nb_results = rc.number_of_results results = rc.get_ordered_results() for result in results: if "thumbnail" in result: result["thumbnail"] = fip(result["thumbnail"]) if "thumbnail_src" in result: result["thumbnail_src"] = fip(result["thumbnail_src"]) if "img_src" in result: result["img_src"] = fip(result["img_src"]) x = { x = { 'query': sq.query, 'query': sq.query, 'number_of_results': results, 'number_of_results': nb_results, 'results': rc.get_ordered_results(), 'results': results, 'answers': list(rc.answers), 'answers': list(rc.answers), 'corrections': list(rc.corrections), 'corrections': list(rc.corrections), 'infoboxes': rc.infoboxes, 'infoboxes': rc.infoboxes, Loading Loading
searx/templates/etheme/result_templates/images.html +1 −1 Original line number Original line Diff line number Diff line <a href="{{ result.img_src }}" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %} data-url="{{ result.url }}" id="show_image_view_modal" class="img-thumb-link"> <a href="{{ result.img_src }}" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %} data-url="{{ result.url }}" id="show_image_view_modal" class="img-thumb-link"> <img src="{% if result.thumbnail_src %} {{ result.thumbnail_src }}{% else %}{{ result.img_src }}{% endif %}" alt="{{ result.title|striptags }}" title="{{ result.title|striptags }}" class="img-thumbnail"> <img src="{% if result.thumbnail_src %}{{ image_proxify(result.thumbnail_src) }}{% else %}{{ image_proxify(result.img_src) }}{% endif %}" alt="{{ result.title|striptags }}" title="{{ result.title|striptags }}" class="img-thumbnail"> <div class="hidden">{{ result.content }}</div> <div class="hidden">{{ result.content }}</div> </a> </a>
searx/templates/etheme/result_templates/videos.html +2 −2 Original line number Original line Diff line number Diff line Loading @@ -2,7 +2,7 @@ <div class="result-content"> <div class="result-content"> <a class="thumbnail" href="{{ result.url }}" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %}> <a class="thumbnail" href="{{ result.url }}" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %}> <img src="{{ result.thumbnail }}" alt="{{ result.title|striptags }} {{ result.engine }}" /> <img src="{{ image_proxify(result.thumbnail) }}" alt="{{ result.title|striptags }} {{ result.engine }}" /> </a> </a> <div> <div> {{ result_header(result, favicons, False) }} {{ result_header(result, favicons, False) }} Loading
searx/webapp.py +1 −1 Original line number Original line Diff line number Diff line Loading @@ -718,7 +718,7 @@ def search(): if output_format == 'json': if output_format == 'json': response = webutils.get_json_response(search_query, result_container) response = webutils.get_json_response(search_query, result_container, image_proxify) return Response(response, mimetype='application/json') return Response(response, mimetype='application/json') if output_format == 'csv': if output_format == 'csv': Loading
searx/webutils.py +17 −5 Original line number Original line Diff line number Diff line Loading @@ -11,7 +11,7 @@ import inspect import itertools import itertools import json import json from datetime import datetime, timedelta from datetime import datetime, timedelta from typing import Iterable, List, Tuple, Dict, TYPE_CHECKING from typing import Callable, Iterable, List, Tuple, Dict, TYPE_CHECKING from io import StringIO from io import StringIO from codecs import getincrementalencoder from codecs import getincrementalencoder Loading Loading @@ -158,13 +158,25 @@ class JSONEncoder(json.JSONEncoder): return super().default(o) return super().default(o) def get_json_response(sq: SearchQuery, rc: ResultContainer) -> str: def get_json_response(sq: SearchQuery, rc: ResultContainer, fip: Callable) -> str: """Returns the JSON string of the results to a query (``application/json``)""" """Returns the JSON string of the results to a query (``application/json``)""" results = rc.number_of_results nb_results = rc.number_of_results results = rc.get_ordered_results() for result in results: if "thumbnail" in result: result["thumbnail"] = fip(result["thumbnail"]) if "thumbnail_src" in result: result["thumbnail_src"] = fip(result["thumbnail_src"]) if "img_src" in result: result["img_src"] = fip(result["img_src"]) x = { x = { 'query': sq.query, 'query': sq.query, 'number_of_results': results, 'number_of_results': nb_results, 'results': rc.get_ordered_results(), 'results': results, 'answers': list(rc.answers), 'answers': list(rc.answers), 'corrections': list(rc.corrections), 'corrections': list(rc.corrections), 'infoboxes': rc.infoboxes, 'infoboxes': rc.infoboxes, Loading