mirror of
https://github.com/clementine-player/Clementine
synced 2024-12-22 15:58:45 +01:00
2a14ec9d4d
This was determined programmatically by means of trying to do a simple HTTP request to / of any of the URLs given: ```python from lxml import etree from urllib import parse import requests doc = etree.parse("ultimate_providers.xml") root = doc.getroot() for provider in root: parsed_url = parse.urlparse(provider.get("url")) url = f"{parsed_url.scheme}://{parsed_url.netloc}/" try: requests.head(url, timeout=5) except Exception as e: print(parsed_url.netloc) ``` Note that these were also removed from songinfoview as present, and from outgoingdatacreator. The two lists there were found to be inconsistent, but this isn't subject of this PR. Signed-off-by: Marcus Müller <marcus_clementine@baseband.digital>
267 lines
13 KiB
XML
267 lines
13 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<lyricproviders>
|
|
<provider name="azlyrics.com" title="{artist} LYRICS - {title}" charset="utf-8" url="http://www.azlyrics.com/lyrics/{artist}/{title}.html">
|
|
<urlFormat replace=" ._@,;&\/()'"-" with=""/>
|
|
<extract>
|
|
<item begin="<!-- Usage of azlyrics.com content by any third-party lyrics provider is prohibited by our licensing agreement. Sorry about that. -->" end="</div>"/>
|
|
</extract>
|
|
<exclude>
|
|
<item tag="<B>"/>
|
|
<item begin="<i>[" end="]</i>"/>
|
|
<item begin="[" end="]"/>
|
|
</exclude>
|
|
<invalidIndicator value="<h1>Welcome to AZLyrics!</h1>"/>
|
|
</provider>
|
|
<provider name="bollywoodlyrics.com (Bollywood songs)" title="{title} Song Lyrics - BollywoodLyrics.com" charset="utf-8" url="http://www.bollywoodlyrics.com/lyric/{Title}">
|
|
<urlFormat replace=" _@;\/"'()[]" with="-"/>
|
|
<urlFormat replace="?" with=""/>
|
|
<extract>
|
|
<item begin="<div class="entry-content">" end="</div>"/>
|
|
</extract>
|
|
<invalidIndicator value="Couldn't find that page."/>
|
|
</provider>
|
|
<provider name="darklyrics.com" title ="{ARTIST} LYRICS - "{title}" ({year}) album" charset="utf-8" url="http://www.darklyrics.com/lyrics/{artist2}/{album2}.html">
|
|
<extract>
|
|
<item begin="<h3><a name="{track}">{track}. {Title2}</a></h3><br />" end="<h3>"/>
|
|
</extract>
|
|
<extract>
|
|
<item begin="<h3><a name="{track}">{track}. {Title2}</a></h3><br />" end="<div class="thanks">"/>
|
|
</extract>
|
|
<invalidIndicator value="The page you requested was not found on DarkLyrics.com."/>
|
|
</provider>
|
|
<provider name="directlyrics.com" title="{artist} - {title} lyrics" charset="iso-8859-1" url="http://www.directlyrics.com/{artist}-{title}-lyrics.html">
|
|
<urlFormat replace=" _@,;&\/'"" with="-"/>
|
|
<urlFormat replace="." with=""/>
|
|
<extract>
|
|
<item tag="<div id="lyricsContent">"/>
|
|
<item tag="<p>"/>
|
|
</extract>
|
|
<exclude>
|
|
<item begin="<b>" end="</b>"/>
|
|
</exclude>
|
|
</provider>
|
|
<provider name="elyrics.net" title="{title} Lyrics - {artist}" charset="iso-8859-1" url="http://www.elyrics.net/read/{a}/{artist}-lyrics/{title}-lyrics.html">
|
|
<urlFormat replace=" _@;&\/"" with="-"/>
|
|
<urlFormat replace="'" with="_"/>
|
|
<extract>
|
|
<item tag="<div class='ly' style='font-size:12px;'>"/>
|
|
</extract>
|
|
<exclude>
|
|
<item tag="<strong>"/>
|
|
<item tag="<em>"/>
|
|
</exclude>
|
|
<invalidIndicator value="Page not Found"/>
|
|
</provider>
|
|
<provider name="Encyclopaedia Metallum" title="{title Lyrics - {artist}" charset="utf-8" url="http://www.metal-archives.com/search/ajax-advanced/searching/songs/?songTitle={title}&bandName={artist}&ExactBandMatch=1">
|
|
<extract>
|
|
<item url="http://www.metal-archives.com/release/ajax-view-lyrics/id/{id}"/>
|
|
<item begin="id=\"lyricsLink_" end="""/>
|
|
</extract>
|
|
<invalidIndicator value=""iTotalRecords": 0"/>
|
|
<invalidIndicator value="lyrics not available"/>
|
|
</provider>
|
|
<provider name="genius.com" charset="utf-8" url="https://www.genius.com/{artist}-{title}-lyrics">
|
|
<urlFormat replace=",._@!#%^*+;\/"'()[]" with=""/>
|
|
<urlFormat replace=" :" with="-"/>
|
|
<!-- When $ is used as the dollar sign it is omitted from the url
|
|
When $ is used instead of 's',
|
|
in some cases it is replaced by 's'(Too $hort -> too-short)
|
|
in other cases it is omitted ($uicideboy$ -> uicideboy)
|
|
I chose to omit it though, in some cases it's gonna be problematic -->
|
|
<urlFormat replace="$" with=""/>
|
|
<urlFormat replace="ÄÂÀÁÃäâàáã" with="a"/>
|
|
<urlFormat replace="ËÊÈÉëêèé" with="e"/>
|
|
<urlFormat replace="ÏÌïì" with="i"/>
|
|
<urlFormat replace="ÖÔÒÓÕöôòóõ" with="o"/>
|
|
<urlFormat replace="ÜŪÙÚüūùú" with="u"/>
|
|
<urlFormat replace="ŸÝÿý" with="y"/>
|
|
<urlFormat replace="Ññ" with="n"/>
|
|
<urlFormat replace="Çç" with="c"/>
|
|
<urlFormat replace="ß" with="ss"/>
|
|
<urlFormat replace="&" with="and"/>
|
|
<extract>
|
|
<item tag="<div class="lyrics">"/>
|
|
</extract>
|
|
<exclude>
|
|
<item begin="<!--" end="-->"/>
|
|
<item begin="<a href=" end=">"/>
|
|
<item begin="</a" end=">"/>
|
|
</exclude>
|
|
</provider>
|
|
<provider name="letras.mus.br" title="" charset="utf-8" url="https://www.letras.mus.br/winamp.php?musica={title}&artista={artist}">
|
|
<urlFormat replace="_@,;&\/"" with="_"/>
|
|
<urlFormat replace=" " with="+"/>
|
|
<extract>
|
|
<item begin="</div>" end="</div>"/>
|
|
</extract>
|
|
<invalidIndicator value="Verifique se o nome do seu arquivo e sua"/>
|
|
</provider>
|
|
<provider name="lololyrics.com" title="" charset="utf-8" url="http://api.lololyrics.com/0.5/getLyric?artist={artist}&track={title}">
|
|
<urlFormat replace="_@,;&\/"#" with="_"/>
|
|
<extract>
|
|
<item tag="<response>"/>
|
|
</extract>
|
|
<invalidIndicator value="ERROR"/>
|
|
</provider>
|
|
<provider name="lyrics.com" title="{artist} - {title} Lyrics" charset="utf-8" url="http://www.lyrics.com/lyrics/{artist}/{title}.html">
|
|
<urlFormat replace=" _@,;&\/"" with="-"/>
|
|
<urlFormat replace="'." with=""/>
|
|
<extract>
|
|
<item tag="<div id="lyrics" class="SCREENONLY">"/>
|
|
</extract>
|
|
<exclude>
|
|
<item begin="<br><br><a target='_blank'" end="></a>"/>
|
|
</exclude>
|
|
<invalidIndicator value="Click to search for the Lyrics on Lyrics.com"/>
|
|
<invalidIndicator value="we do not have the lyric for this song"/>
|
|
</provider>
|
|
<provider name="lyrics.wikia.com" title="{artist}:{title} Lyrics - " charset="utf-8" url="http://lyrics.wikia.com/{Artist}:{Title}">
|
|
<urlFormat replace=" _@;\"" with="_"/>
|
|
<urlFormat replace="?" with="%3F"/>
|
|
<extract>
|
|
<item begin="<div class='lyricbox'>" end="<div class='lyricsbreak'"/>
|
|
</extract>
|
|
<exclude>
|
|
<item tag="<div class='rtMatcher'>"/>
|
|
<item tag="<span style="padding:1em">"/>
|
|
</exclude>
|
|
</provider>
|
|
<provider name="lyricsbay.com" title="{title} lyrics {artist}" charset="iso-8859-1" url="http://www.lyricsbay.com/{title}_lyrics-{artist}.html">
|
|
<urlFormat replace=" _@,;&\/'"" with="_"/>
|
|
<urlFormat replace="." with=""/>
|
|
<extract>
|
|
<item tag="<div id=EchoTopic>"/>
|
|
</extract>
|
|
<exclude>
|
|
<item tag="<textarea name="songscpy" id="songscpyid" onclick="callselect('songscpyid','selectswf')" rows="3" cols="45" READONLY>"/>
|
|
</exclude>
|
|
</provider>
|
|
<provider name="lyricsdownload.com" title="{artist} - {title} LYRICS" charset="utf-8" url="http://www.lyricsdownload.com/{artist}-{title}-lyrics.html">
|
|
<urlFormat replace=" _@,;&\/"" with="-"/>
|
|
<urlFormat replace="." with=""/>
|
|
<extract>
|
|
<item tag="<div id="div_customCSS">"/>
|
|
</extract>
|
|
<invalidIndicator value="We haven't lyrics of this song"/>
|
|
</provider>
|
|
<provider name="lyricsmania.com" title="{artist} - {title} Lyrics" charset="iso-8859-1" url="http://www.lyricsmania.com/{title}_lyrics_{artist}.html">
|
|
<urlFormat replace=" _@;&\/"'." with="_"/>
|
|
<extract>
|
|
<item begin="<span style="font-size:14px;">" end="<span style="font-size:14px;">"/>
|
|
<item begin="</center>" end="<a"/>
|
|
</extract>
|
|
<invalidIndicator value="The lyrics you requested is not in our archive yet,"/>
|
|
</provider>
|
|
<provider name="lyricsmode.com" title="{artist} - {title} lyrics" charset="iso-8859-1" url="http://www.lyricsmode.com/lyrics/{a}/{artist}/{title}.html">
|
|
<urlFormat replace=" ._@,;&\/"" with="_"/>
|
|
<extract>
|
|
<item tag="<div id='songlyrics_h' class='dn'>"/>
|
|
</extract>
|
|
<invalidIndicator value="Sorry, we have no"/>
|
|
</provider>
|
|
<provider name="lyricsplugin.com" title="{artist} - {title} Lyrics" charset="utf-8" url="http://www.lyricsplugin.com/winamp03/plugin/?title={title}&artist={artist}">
|
|
<urlFormat replace="_@;&\/"" with="-"/>
|
|
<urlFormat replace="'" with=""/>
|
|
<urlFormat replace=" " with="%20"/>
|
|
<extract>
|
|
<item tag="<div id="lyrics">"/>
|
|
</extract>
|
|
</provider>
|
|
<provider name="lyricsreg.com" title="{title} lyrics {artist}" charset="iso-8859-1" url="http://www.lyricsreg.com/lyrics/{artist}/{title}/">
|
|
<urlFormat replace=" _@,;&\/"" with="+"/>
|
|
<urlFormat replace="'." with=""/>
|
|
<extract>
|
|
<item begin="Ringtone to your Cell" end="Ringtone to your Cell"/>
|
|
<item begin="<div style="text-align:center;">" end="<a"/>
|
|
</extract>
|
|
<invalidIndicator value="Page not Found"/>
|
|
</provider>
|
|
<provider name="lyriki.com" title="" charset="utf-8" url="http://www.lyriki.com/{artist}:{title}">
|
|
<urlFormat replace=" _@,;&\/"" with="_"/>
|
|
<urlFormat replace="." with=""/>
|
|
<extract>
|
|
<item begin="</table>" end="<div class="printfooter">"/>
|
|
<item tag="<p>"/>
|
|
</extract>
|
|
</provider>
|
|
<provider name="mp3lyrics.org" title="{artist} &quot;{title}&quot; Lyrics" charset="utf-8" url="http://www.mp3lyrics.org/{a}/{artist}/{title}/">
|
|
<urlFormat replace=" _@,;&\/"" with="-"/>
|
|
<urlFormat replace="'." with=""/>
|
|
<extract>
|
|
<item tag="<span id=gn_lyricsB>"/>
|
|
</extract>
|
|
<extract>
|
|
<item tag="<div class="KonaBody" id="EchoTopic">"/>
|
|
</extract>
|
|
<exclude>
|
|
<item tag="<font size=2>"/>
|
|
<item begin="<b><i>" end="</u></b>:"/>
|
|
<item begin="<b>Lyrics" end="</b>"/>
|
|
</exclude>
|
|
<invalidIndicator value="Something went wrong"/>
|
|
</provider>
|
|
<provider name="musixmatch.com" title="{artist} - {title} lyrics | Musixmatch" charset="utf-8" url="https://www.musixmatch.com/lyrics/{Artist}/{Title}">
|
|
<urlFormat replace=" _@;\/"'()[]" with="-"/>
|
|
<urlFormat replace="?" with=""/>
|
|
<extract>
|
|
<item begin="<span id="lyrics-html"" end="</span>"/>
|
|
</extract>
|
|
<exclude>
|
|
<item begin=" data-reactid="" end="">"/>
|
|
</exclude>
|
|
<invalidIndicator value="We couldn't find that page."/>
|
|
</provider>
|
|
<provider name="songlyrics.com" title="{title} LYRICS - {artist}" charset="utf-8" url="http://www.songlyrics.com/{artist}/{title}-lyrics/">
|
|
<urlFormat replace=" ._@,;&\/"" with="-"/>
|
|
<urlFormat replace="'" with="_"/>
|
|
<extract>
|
|
<item tag="<p id="songLyricsDiv" ondragstart="return false;" onselectstart="return false;" oncontextmenu="return false;" class="songLyricsV14" style="font-size: 14px;z-index: 9999;position: absolute;left: -6000px;">"/>
|
|
</extract>
|
|
<exclude>
|
|
<item begin=" [" end="] "/>
|
|
</exclude>
|
|
<invalidIndicator value="Sorry, we have no"/>
|
|
<invalidIndicator value="This is an upcoming album and we do not have the"/>
|
|
</provider>
|
|
<provider name="tekstowo.pl (Original lyric language)" title="{artist} - {title} - tekst" charset="utf-8" url="http://www.tekstowo.pl/piosenka,{artist},{title}.html">
|
|
<urlFormat replace=" _@,;&\/'"." with="_"/>
|
|
<extract>
|
|
<item begin="<div class="song-text">" end="<a href="javascript:;""/>
|
|
</extract>
|
|
<extract>
|
|
<item tag="<div class="tlumaczenie">"/>
|
|
</extract>
|
|
<exclude>
|
|
<item begin="<h2>" end="</h2><br />"/>
|
|
</exclude>
|
|
</provider>
|
|
<provider name="tekstowo.pl (Translated to Polish)" title="{artist} - {title} - tekst" charset="utf-8" url="http://www.tekstowo.pl/piosenka,{artist},{title}.html">
|
|
<urlFormat replace=" _@,;&\/'"." with="_"/>
|
|
<extract>
|
|
<item begin="<div id="translation" class=" end="<a href="/>
|
|
</extract>
|
|
<exclude>
|
|
<item begin=""id-" end="">"/>
|
|
</exclude>
|
|
</provider>
|
|
<provider name="teksty.org" title="{artist} - {title} - tekst" charset="utf-8" url="http://teksty.org/{artist},{title},tekst-piosenki">
|
|
<urlFormat replace=" _@,;&\/"'" with="-"/>
|
|
<urlFormat replace="." with=""/>
|
|
<extract>
|
|
<item begin="<div class="songText" id="songContent">" end="</div>"/>
|
|
</extract>
|
|
</provider>
|
|
<provider name="vagalume.com.br" title="{title} de {artist} no VAGALUME" charset="iso-8859-1" url="http://vagalume.com.br/{artist}/{title}.html">
|
|
<urlFormat replace=" _@,;&\/'"." with="-"/>
|
|
<extract>
|
|
<item tag="<span class="editable_area">"/>
|
|
</extract>
|
|
</provider>
|
|
<provider name="vagalume.com.br (Portuguese translations)" title="{title} de {artist} no VAGALUME" charset="iso-8859-1" url="http://vagalume.com.br/{artist}/{title}-traducao.html">
|
|
<urlFormat replace=" _@,;&\/'"." with="-"/>
|
|
<extract>
|
|
<item tag="<div class="tab_traducao sideBySide lyricArea tab_tra_pt">"/>
|
|
</extract>
|
|
</provider>
|
|
</lyricproviders>
|