diff options
| author | Bnyro <bnyro@tutanota.com> | 2024-02-20 10:51:58 +0100 |
|---|---|---|
| committer | Markus Heiser <markus.heiser@darmarIT.de> | 2024-02-25 16:22:37 +0100 |
| commit | e76ab1a4b3a99b0ec2ef90c3aadc92ffbf6889b1 (patch) | |
| tree | be5443686fbe1ab6a6fa95e55a12a189230ba92e /searx/engines | |
| parent | b683aa63fb3e1689c28bd4b762b4ad962e8e232c (diff) | |
[refactor] images: add resolution, image format and filesize fields
Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
Diffstat (limited to 'searx/engines')
| -rw-r--r-- | searx/engines/artic.py | 5 | ||||
| -rw-r--r-- | searx/engines/bing_images.py | 5 | ||||
| -rw-r--r-- | searx/engines/brave.py | 3 | ||||
| -rw-r--r-- | searx/engines/demo_online.py | 5 | ||||
| -rw-r--r-- | searx/engines/duckduckgo_extra.py | 2 | ||||
| -rw-r--r-- | searx/engines/flickr_noapi.py | 4 | ||||
| -rw-r--r-- | searx/engines/google_images.py | 2 | ||||
| -rw-r--r-- | searx/engines/qwant.py | 2 | ||||
| -rw-r--r-- | searx/engines/seekr.py | 2 | ||||
| -rw-r--r-- | searx/engines/wallhaven.py | 7 | ||||
| -rw-r--r-- | searx/engines/wikicommons.py | 2 |
11 files changed, 23 insertions, 16 deletions
diff --git a/searx/engines/artic.py b/searx/engines/artic.py index c0ae0a5e7..506a9cea6 100644 --- a/searx/engines/artic.py +++ b/searx/engines/artic.py @@ -57,11 +57,10 @@ def response(resp): results.append( { 'url': 'https://artic.edu/artworks/%(id)s' % result, - 'title': result['title'] + " (%(date_display)s) // %(artist_display)s" % result, - 'content': result['medium_display'], + 'title': result['title'] + " (%(date_display)s) // %(artist_display)s" % result, + 'content': "%(medium_display)s // %(dimensions)s" % result, 'author': ', '.join(result['artist_titles']), 'img_src': image_api + '/%(image_id)s/full/843,/0/default.jpg' % result, - 'img_format': result['dimensions'], 'template': 'images.html', } ) diff --git a/searx/engines/bing_images.py b/searx/engines/bing_images.py index faf0941c8..788c90278 100644 --- a/searx/engines/bing_images.py +++ b/searx/engines/bing_images.py @@ -92,7 +92,7 @@ def response(resp): metadata = json.loads(result.xpath('.//a[@class="iusc"]/@m')[0]) title = ' '.join(result.xpath('.//div[@class="infnmpt"]//a/text()')).strip() - img_format = ' '.join(result.xpath('.//div[@class="imgpt"]/div/span/text()')).strip() + img_format = ' '.join(result.xpath('.//div[@class="imgpt"]/div/span/text()')).strip().split(" ยท ") source = ' '.join(result.xpath('.//div[@class="imgpt"]//div[@class="lnkw"]//a/text()')).strip() results.append( { @@ -103,7 +103,8 @@ def response(resp): 'content': metadata['desc'], 'title': title, 'source': source, - 'img_format': img_format, + 'resolution': img_format[0], + 'img_format': img_format[1] if len(img_format) >= 2 else None, } ) return results diff --git a/searx/engines/brave.py b/searx/engines/brave.py index 397af6094..8588c2efd 100644 --- a/searx/engines/brave.py +++ b/searx/engines/brave.py @@ -367,9 +367,10 @@ def _parse_images(json_resp): 'title': result['title'], 'content': result['description'], 'template': 'images.html', - 'img_format': result['properties']['format'], + 'resolution': result['properties']['format'], 'source': result['source'], 'img_src': result['properties']['url'], + 'thumbnail_src': result['thumbnail']['src'], } result_list.append(item) diff --git a/searx/engines/demo_online.py b/searx/engines/demo_online.py index 08add5371..33cfde822 100644 --- a/searx/engines/demo_online.py +++ b/searx/engines/demo_online.py @@ -88,11 +88,10 @@ def response(resp): results.append( { 'url': 'https://artic.edu/artworks/%(id)s' % result, - 'title': result['title'] + " (%(date_display)s) // %(artist_display)s" % result, - 'content': result['medium_display'], + 'title': result['title'] + " (%(date_display)s) // %(artist_display)s" % result, + 'content': "%(medium_display)s // %(dimensions)s" % result, 'author': ', '.join(result['artist_titles']), 'img_src': image_api + '/%(image_id)s/full/843,/0/default.jpg' % result, - 'img_format': result['dimensions'], 'template': 'images.html', } ) diff --git a/searx/engines/duckduckgo_extra.py b/searx/engines/duckduckgo_extra.py index 25692add7..83ca38c26 100644 --- a/searx/engines/duckduckgo_extra.py +++ b/searx/engines/duckduckgo_extra.py @@ -96,7 +96,7 @@ def _image_result(result): 'content': '', 'thumbnail_src': result['thumbnail'], 'img_src': result['image'], - 'img_format': '%s x %s' % (result['width'], result['height']), + 'resolution': '%s x %s' % (result['width'], result['height']), 'source': result['source'], } diff --git a/searx/engines/flickr_noapi.py b/searx/engines/flickr_noapi.py index 5299c604f..ebd61570f 100644 --- a/searx/engines/flickr_noapi.py +++ b/searx/engines/flickr_noapi.py @@ -110,7 +110,7 @@ def response(resp): # pylint: disable=too-many-branches continue img_src = size_data['url'] - img_format = f"{size_data['width']} x {size_data['height']}" + resolution = f"{size_data['width']} x {size_data['height']}" # For a bigger thumbnail, keep only the url_z, not the url_n if 'n' in photo['sizes']['data']: @@ -131,7 +131,7 @@ def response(resp): # pylint: disable=too-many-branches 'img_src': img_src, 'thumbnail_src': thumbnail_src, 'source': source, - 'img_format': img_format, + 'resolution': resolution, 'template': 'images.html', } result['author'] = author.encode(errors='ignore').decode() diff --git a/searx/engines/google_images.py b/searx/engines/google_images.py index d2d33d408..31211b9b6 100644 --- a/searx/engines/google_images.py +++ b/searx/engines/google_images.py @@ -103,7 +103,7 @@ def response(resp): 'title': item["result"]["page_title"], 'content': item["text_in_grid"]["snippet"], 'source': item["result"]["site_title"], - 'img_format': f'{item["original_image"]["width"]} x {item["original_image"]["height"]}', + 'resolution': f'{item["original_image"]["width"]} x {item["original_image"]["height"]}', 'img_src': item["original_image"]["url"], 'thumbnail_src': item["thumbnail"]["url"], 'template': 'images.html', diff --git a/searx/engines/qwant.py b/searx/engines/qwant.py index 1f8556cf1..775a11292 100644 --- a/searx/engines/qwant.py +++ b/searx/engines/qwant.py @@ -265,6 +265,8 @@ def parse_web_api(resp): 'template': 'images.html', 'thumbnail_src': thumbnail, 'img_src': img_src, + 'resolution': f"{item['width']} x {item['height']}", + 'img_format': item.get('thumb_type'), } ) diff --git a/searx/engines/seekr.py b/searx/engines/seekr.py index 9250ac991..014b736dc 100644 --- a/searx/engines/seekr.py +++ b/searx/engines/seekr.py @@ -122,7 +122,7 @@ def _images_response(json): 'url': summary['refererurl'], 'title': result['title'], 'img_src': result['url'], - 'img_format': f"{summary['width']}x{summary['height']}", + 'resolution': f"{summary['width']}x{summary['height']}", 'thumbnail_src': 'https://media.seekr.com/engine/rp/' + summary['tg'] + '/?src= ' + result['thumbnail'], } ) diff --git a/searx/engines/wallhaven.py b/searx/engines/wallhaven.py index f80b5d86d..94be1a6a7 100644 --- a/searx/engines/wallhaven.py +++ b/searx/engines/wallhaven.py @@ -8,6 +8,8 @@ from datetime import datetime from urllib.parse import urlencode +from searx.utils import humanize_bytes + about = { 'website': 'https://wallhaven.cc/', 'official_api_documentation': 'https://wallhaven.cc/help/api', @@ -68,6 +70,7 @@ def response(resp): json = resp.json() for result in json['data']: + results.append( { 'template': 'images.html', @@ -76,8 +79,10 @@ def response(resp): 'url': result['url'], 'img_src': result['path'], 'thumbnail_src': result['thumbs']['small'], - 'img_format': result['resolution'], + 'resolution': result['resolution'].replace('x', ' x '), 'publishedDate': datetime.strptime(result['created_at'], '%Y-%m-%d %H:%M:%S'), + 'img_format': result['file_type'], + 'filesize': humanize_bytes(result['file_size']), } ) diff --git a/searx/engines/wikicommons.py b/searx/engines/wikicommons.py index a478f57d2..9b0849716 100644 --- a/searx/engines/wikicommons.py +++ b/searx/engines/wikicommons.py @@ -62,7 +62,7 @@ def response(resp): 'title': title, 'content': item["snippet"], 'img_src': imageinfo["url"], - 'img_format': f'{imageinfo["width"]} x {imageinfo["height"]}', + 'resolution': f'{imageinfo["width"]} x {imageinfo["height"]}', 'thumbnail_src': imageinfo["thumburl"], 'template': 'images.html', } |