Add better error for invalid playlists

This commit is contained in:
Omar Roth 2018-09-23 12:26:12 -05:00
parent 5bdd8327d4
commit 1d9c6f63e1
2 changed files with 7 additions and 4 deletions

View file

@ -390,9 +390,8 @@ get "/playlist" do |env|
page = env.params.query["page"]?.try &.to_i?
page ||= 1
playlist = fetch_playlist(plid)
begin
playlist = fetch_playlist(plid)
videos = fetch_playlist_videos(plid, page, playlist.video_count)
rescue ex
error_message = ex.message
@ -2823,9 +2822,9 @@ get "/api/v1/playlists/:plid" do |env|
page = env.params.query["page"]?.try &.to_i?
page ||= 1
playlist = fetch_playlist(plid)
begin
playlist = fetch_playlist(plid)
videos = fetch_playlist_videos(plid, page, playlist.video_count)
rescue ex
error_message = {"error" => "Playlist is empty"}.to_json

View file

@ -142,6 +142,10 @@ def fetch_playlist(plid)
end
response = client.get("/playlist?list=#{plid}&disable_polymer=1")
if response.status_code != 200
raise "Invalid playlist."
end
body = response.body.gsub(<<-END_BUTTON
<button class="yt-uix-button yt-uix-button-size-default yt-uix-button-link yt-uix-expander-head playlist-description-expander yt-uix-inlineedit-ignore-edit" type="button" onclick=";return false;"><span class="yt-uix-button-content"> less <img alt="" src="/yts/img/pixel-vfl3z5WfW.gif">
</span></button>