diff --git a/beetsplug/lyrics.py b/beetsplug/lyrics.py index b6457fc47..93c31d938 100644 --- a/beetsplug/lyrics.py +++ b/beetsplug/lyrics.py @@ -461,20 +461,27 @@ class Tekstowo(Backend): if not soup: return None - song_rows = soup.find("div", class_="content"). \ - find("div", class_="card"). \ - find_all("div", class_="box-przeboje") + content_div = soup.find("div", class_="content") + if not content_div: + return None + card_div = content_div.find("div", class_="card") + if not card_div: + return None + + song_rows = card_div.find_all("div", class_="box-przeboje") if not song_rows: return None song_row = song_rows[0] - if not song_row: return None - href = song_row.find('a').get('href') - return self.BASE_URL + href + link = song_row.find('a') + if not link: + return None + + return self.BASE_URL + link.get('href') def extract_lyrics(self, html): html = _scrape_strip_cruft(html) @@ -484,10 +491,11 @@ class Tekstowo(Backend): if not soup: return None - c = soup.find("div", class_="song-text") - if c: - return c.get_text() - return None + lyrics_div = soup.find("div", class_="song-text") + if not lyrics_div: + return None + + return lyrics_div.get_text() def remove_credits(text):