beetbox / beets

music library manager and MusicBrainz tagger
http://beets.io/
MIT License
12.58k stars 1.8k forks source link

Unable to retrieve lyrics from Genius or Musixmatch #5200

Open fmillion opened 2 months ago

fmillion commented 2 months ago

Beets is unable to load any lyrics from Genius or Musixmatch.

Problem

Running this command in verbose (-vv) mode (with a small sample library of four songs):

[fmillion@d141 Music]$ beet -vvv lyrics
user configuration: /home/fmillion/.config/beets/config.yaml
data directory: /home/fmillion/.config/beets
plugin paths: 
Sending event: pluginload
library database: /home/fmillion/.config/beets/beets.db
library directory: /home/fmillion/Music
Sending event: library_opened
lyrics: Genius failed to find a matching artist for 'John Mayer'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/John-Mayer/Wild-Blue (404)
lyrics: Genius failed to find a matching artist for 'Mayer, John'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Mayer%2C-John/Wild-Blue (404)
lyrics: lyrics not found: John Mayer - Sob Rock - Wild Blue
lyrics: Genius failed to find a matching artist for 'Sarah McLachlan'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Sarah-Mclachlan/Angel (404)
lyrics: Genius failed to find a matching artist for 'McLachlan, Sarah'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Mclachlan%2C-Sarah/Angel (404)
lyrics: lyrics not found: Sarah McLachlan - Surfacing - Angel
lyrics: Genius failed to find a matching artist for 'Ed Sheeran'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Ed-Sheeran/Bad-Habits (404)
lyrics: Genius failed to find a matching artist for 'Sheeran, Ed'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Sheeran%2C-Ed/Bad-Habits (404)
lyrics: lyrics not found: Ed Sheeran - = - Bad Habits
lyrics: Genius failed to find a matching artist for 'Simon & Garfunkel'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Simon-%26-Garfunkel/Scarborough-Fair-/-Canticle (404)
lyrics: Genius failed to find a matching artist for 'Simon & Garfunkel'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Simon-%26-Garfunkel/Scarborough-Fair (404)
lyrics: Genius failed to find a matching artist for 'Simon & Garfunkel'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Simon-%26-Garfunkel/Canticle (404)
lyrics: Genius failed to find a matching artist for 'Simon'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Simon/Scarborough-Fair-/-Canticle (404)
lyrics: Genius failed to find a matching artist for 'Simon'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Simon/Scarborough-Fair (404)
lyrics: Genius failed to find a matching artist for 'Simon'
lyrics: failed to fetch: https://www.musixmatch.com/lyrics/Simon/Canticle (404)
lyrics: lyrics not found: Simon & Garfunkel - Parsley, Sage, Rosemary and Thyme - Scarborough Fair / Canticle
Sending event: cli_exit

Led to this problem:

Seems to have started recently (within the past few weeks). No specific action on my part caused it.

Setup

My configuration (output of beet config) is:

lyrics:
    bing_lang_from: []
    sources: genius musixmatch
    auto: yes
    bing_client_secret: REDACTED
    bing_lang_to:
    google_API_key: REDACTED
    google_engine_ID: REDACTED
    genius_api_key: REDACTED
    fallback:
    force: no
    local: no
directory: /home/fmillion/Music

library: beets.db

plugins: lyrics
wisp3rwind commented 2 months ago

Duplicate of #4815

wisp3rwind commented 2 months ago

Sorry, closed the wrong issue...

pbogre commented 1 month ago

I am also having trouble getting lyrics with Beets.

When I use musixmatch every request will get a 404 (maybe they added some sort of verification? the python code r = requests.get("https://www.musixmatch.com/lyrics/<artist>/<song>") will have status code 404 even if the lyrics exist and I can visit them on my browser)

When I use lrclib it won't even try to fetch the lyrics, skipping straight to "lyrics not found" without any request in the logs.

Here's my config:

lyrics:
    bing_lang_from: []
    auto: yes
    sources: musixmatch
    bing_client_secret: REDACTED
    bing_lang_to:
    google_API_key: REDACTED
    google_engine_ID: REDACTED
    genius_api_key: REDACTED
    fallback:
    force: no
    local: no
directory: /mnt/nas/media/music
library: /home/user/.config/beets/library.db

plugins: lyrics

import:
    move: yes
    write: yes
2V3EvG4LMJFdRe commented 1 day ago

I am also having trouble getting lyrics with Beets.

When I use musixmatch every request will get a 404 (maybe they added some sort of verification? the python code r = requests.get("https://www.musixmatch.com/lyrics/<artist>/<song>") will have status code 404 even if the lyrics exist and I can visit them on my browser)

When I use lrclib it won't even try to fetch the lyrics, skipping straight to "lyrics not found" without any request in the logs.

Here's my config:

lyrics:
    bing_lang_from: []
    auto: yes
    sources: musixmatch
    bing_client_secret: REDACTED
    bing_lang_to:
    google_API_key: REDACTED
    google_engine_ID: REDACTED
    genius_api_key: REDACTED
    fallback:
    force: no
    local: no
directory: /mnt/nas/media/music
library: /home/user/.config/beets/library.db

plugins: lyrics

import:
    move: yes
    write: yes

Musixmatch is broken, see https://github.com/beetbox/beets/issues/4585