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));
|
||||
|
||||
std::string data;
|
||||
CURLcode code = Curl::perform(data, url);
|
||||
CURLcode code = Curl::perform(data, url, "", true);
|
||||
|
||||
if (code != CURLE_OK)
|
||||
{
|
||||
@@ -87,7 +87,7 @@ LyricsFetcher::Result LyricsFetcher::fetch(const std::string &artist,
|
||||
}
|
||||
|
||||
auto lyrics = getContent(regex(), data);
|
||||
|
||||
|
||||
if (lyrics.empty() || notLyrics(data))
|
||||
{
|
||||
result.second = msgNotFound;
|
||||
|
||||
@@ -106,7 +106,7 @@ struct Sing365Fetcher : public GoogleLyricsFetcher
|
||||
virtual const char *name() const override { return "sing365.com"; }
|
||||
|
||||
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
|
||||
@@ -130,7 +130,7 @@ struct GeniusFetcher : public GoogleLyricsFetcher
|
||||
virtual const char *name() const override { return "genius.com"; }
|
||||
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user