diff options
| author | Markus Heiser <markus.heiser@darmarIT.de> | 2021-05-27 14:23:22 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-05-27 14:23:22 +0000 |
| commit | 32b5a0ef7bc67e39e2287ca742d8dda6a3cadf3e (patch) | |
| tree | c56a6358cc3ff57055f7660f810e147608456ba6 | |
| parent | 25b5797a0ce64d309d5baf295f88362502a17887 (diff) | |
| parent | f963759ccc8b7598db780fc112551c03aadde51e (diff) | |
Merge pull request #93 from return42/genius-misc
Some minor Genius improvements
| -rw-r--r-- | searx/engines/genius.py | 60 |
1 files changed, 35 insertions, 25 deletions
diff --git a/searx/engines/genius.py b/searx/engines/genius.py index 9f6a8cd5f..9d701a8de 100644 --- a/searx/engines/genius.py +++ b/searx/engines/genius.py @@ -1,12 +1,17 @@ # SPDX-License-Identifier: AGPL-3.0-or-later -""" - Genius +# lint: pylint +# pylint: disable=invalid-name, missing-function-docstring +"""Genius + """ from json import loads from urllib.parse import urlencode from datetime import datetime +from searx import logger +logger = logger.getChild('genius engine') + # about about = { "website": 'https://genius.com/', @@ -27,49 +32,54 @@ search_url = url + 'search/{index}?{query}&page={pageno}&per_page={page_size}' def request(query, params): - params['url'] = search_url.format(query=urlencode({'q': query}), - index='multi', - page_size=page_size, - pageno=params['pageno']) + params['url'] = search_url.format( + query=urlencode({'q': query}), + index='multi', + page_size=page_size, + pageno=params['pageno'], + ) return params def parse_lyric(hit): try: content = hit['highlights'][0]['value'] - except: + except Exception as e: # pylint: disable=broad-except + logger.error(e, exc_info=True) content = '' timestamp = hit['result']['lyrics_updated_at'] - result = {'url': hit['result']['url'], - 'title': hit['result']['full_title'], - 'content': content, - 'thumbnail': hit['result']['song_art_image_thumbnail_url'], - 'template': 'videos.html'} + result = { + 'url': hit['result']['url'], + 'title': hit['result']['full_title'], + 'content': content, + 'thumbnail': hit['result']['song_art_image_thumbnail_url'], + } if timestamp: result.update({'publishedDate': datetime.fromtimestamp(timestamp)}) return result def parse_artist(hit): - result = {'url': hit['result']['url'], - 'title': hit['result']['name'], - 'content': '', - 'thumbnail': hit['result']['image_url'], - 'template': 'videos.html'} + result = { + 'url': hit['result']['url'], + 'title': hit['result']['name'], + 'content': '', + 'thumbnail': hit['result']['image_url'], + } return result def parse_album(hit): - result = {'url': hit['result']['url'], - 'title': hit['result']['full_title'], - 'thumbnail': hit['result']['cover_art_url'], - 'content': '', - # 'thumbnail': hit['result']['cover_art_thumbnail_url'], - 'template': 'videos.html'} + result = { + 'url': hit['result']['url'], + 'title': hit['result']['full_title'], + 'thumbnail': hit['result']['cover_art_url'], + 'content': '', + } try: year = hit['result']['release_date_components']['year'] - except: - pass + except Exception as e: # pylint: disable=broad-except + logger.error(e, exc_info=True) else: if year: result.update({'content': 'Released: {}'.format(year)}) |