johnwmillr / LyricsGenius

Download song lyrics and metadata from Genius.com 🎶🎤
http://www.johnwmillr.com/scraping-genius-lyrics/
MIT License
898 stars 159 forks source link

FeatureNotFound error #132

Closed ezekini closed 4 years ago

ezekini commented 4 years ago

Describe the bug I get an error when trying a simple api functin (as described in the documentation)

Expected behavior get API response

To Reproduce

import lyricsgenius
genius = lyricsgenius.Genius(GENIUS_CLIENT_TOKEN)
artist = genius.search_artist('Andy Shauf', max_songs=3)

Include the error message associated with the bug.

Searching for songs by Andy Shauf...

---------------------------------------------------------------------------
FeatureNotFound                           Traceback (most recent call last)
<ipython-input-194-5f06b96e7eef> in <module>
      1 genius = lyricsgenius.Genius(GENIUS_CLIENT_TOKEN)
      2 
----> 3 artist = genius.search_artist('Andy Shauf', max_songs=3)

~/miniconda3/envs/baseML/lib/python3.6/site-packages/lyricsgenius/api.py in search_artist(self, artist_name, max_songs, sort, per_page, get_full_info, allow_name_change, artist_id)
    348 
    349                 # Create the Song object from lyrics and metadata
--> 350                 lyrics = self._scrape_song_lyrics_from_url(song_info['url'])
    351                 if get_full_info:
    352                     info = self.get_song(song_info['id'])

~/miniconda3/envs/baseML/lib/python3.6/site-packages/lyricsgenius/api.py in _scrape_song_lyrics_from_url(self, url)
    166 
    167         # Scrape the song lyrics from the HTML
--> 168         html = BeautifulSoup(page.text, "html.parser")
    169         div = html.find("div", class_="lyrics")
    170         if not div:

~/miniconda3/envs/baseML/lib/python3.6/site-packages/bs4/__init__.py in __init__(self, markup, features, builder, parse_only, from_encoding, exclude_encodings, **kwargs)
    163                     "Couldn't find a tree builder with the features you "
    164                     "requested: %s. Do you need to install a parser library?"
--> 165                     % ",".join(features))
    166             builder = builder_class()
    167             if not (original_features == builder.NAME or

FeatureNotFound: Couldn't find a tree builder with the features you requested: html.parser. Do you need to install a parser library?

Version info

Additional context I checked and beautiful soup4 and lxml are installed