Fix fetching lyrics from sing365.com and genius.com
This commit is contained in:
@@ -78,7 +78,7 @@ LyricsFetcher::Result LyricsFetcher::fetch(const std::string &artist,
|
|||||||
boost::replace_all(url, "%title%", Curl::escape(title));
|
boost::replace_all(url, "%title%", Curl::escape(title));
|
||||||
|
|
||||||
std::string data;
|
std::string data;
|
||||||
CURLcode code = Curl::perform(data, url);
|
CURLcode code = Curl::perform(data, url, "", true);
|
||||||
|
|
||||||
if (code != CURLE_OK)
|
if (code != CURLE_OK)
|
||||||
{
|
{
|
||||||
@@ -87,7 +87,7 @@ LyricsFetcher::Result LyricsFetcher::fetch(const std::string &artist,
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto lyrics = getContent(regex(), data);
|
auto lyrics = getContent(regex(), data);
|
||||||
|
|
||||||
if (lyrics.empty() || notLyrics(data))
|
if (lyrics.empty() || notLyrics(data))
|
||||||
{
|
{
|
||||||
result.second = msgNotFound;
|
result.second = msgNotFound;
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ struct Sing365Fetcher : public GoogleLyricsFetcher
|
|||||||
virtual const char *name() const override { return "sing365.com"; }
|
virtual const char *name() const override { return "sing365.com"; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual const char *regex() const override { return "<!-Lyrics Begin->(.*?)<!-Lyrics End->"; }
|
virtual const char *regex() const override { return "<div class=\"content\">.*?</script>(.*?)<script>"; }
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JustSomeLyricsFetcher : public GoogleLyricsFetcher
|
struct JustSomeLyricsFetcher : public GoogleLyricsFetcher
|
||||||
@@ -130,7 +130,7 @@ struct GeniusFetcher : public GoogleLyricsFetcher
|
|||||||
virtual const char *name() const override { return "genius.com"; }
|
virtual const char *name() const override { return "genius.com"; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual const char *regex() const override { return "<lyrics.*?>(.*?)</lyrics>"; }
|
virtual const char *regex() const override { return "<div class=\"lyrics\">(.*?)</div>"; }
|
||||||
};
|
};
|
||||||
|
|
||||||
struct JahLyricsFetcher : public GoogleLyricsFetcher
|
struct JahLyricsFetcher : public GoogleLyricsFetcher
|
||||||
|
|||||||
Reference in New Issue
Block a user