From a6f1f6a46a943446354055a2452ef1daad930644 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Harrault?= <benoit@harrault.fr> Date: Thu, 5 May 2022 17:24:22 +0200 Subject: [PATCH] Fix encoding in title and artist name --- addon.xml | 2 +- gui.py | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/addon.xml b/addon.xml index 02179a3..17e7f1e 100644 --- a/addon.xml +++ b/addon.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <addon id="script.spotify.screensaver" name="Spotify Screensaver" - version="0.0.15" + version="0.0.16" provider-name="Benoît Harrault"> <requires> <import addon="xbmc.python" version="2.25.0"/> diff --git a/gui.py b/gui.py index e164525..23ba406 100644 --- a/gui.py +++ b/gui.py @@ -172,6 +172,9 @@ class GUI(xbmcgui.WindowXMLDialog): self.PanelItems = self.getControl(101) self.PanelItems.reset() + def _fix_encoding(self, string): + return string.encode('utf-8') + def _get_track_data(self, track_id, try_count=1): self.log('track_id: [' + str(track_id) + ']') self.log('(try: ' + str(try_count) + ')') @@ -191,7 +194,7 @@ class GUI(xbmcgui.WindowXMLDialog): ) data = response.json() - track_data['track_name'] = data.get('name', '') + track_data['track_name'] = self._fix_encoding(data.get('name', '')) track_data['track_artists'] = [] # album/track image @@ -229,7 +232,7 @@ class GUI(xbmcgui.WindowXMLDialog): self.log('ok got artist_name from API') self.log(json.dumps(artist_name)) - track_data['track_artists'].append(artist_name) + track_data['track_artists'].append(self._fix_encoding(artist_name)) # get images images = album.get('images') @@ -257,7 +260,7 @@ class GUI(xbmcgui.WindowXMLDialog): self.log(track_image_url) track_data['track_image_url'] = track_image_url except Exception as e: - self.log('failed to get track data ' + str(e), xbmc.LOGERROR) + self.log('failed to get track data: ' + str(e), xbmc.LOGERROR) return track_data -- GitLab