Filter paid videos from RSS and channel list

This commit is contained in:
Omar Roth 2019-01-02 20:09:00 -06:00
parent c2c224b16f
commit 0832fa9bdb
2 changed files with 5 additions and 3 deletions

View File

@ -1909,6 +1909,7 @@ get "/feed/channel/:ucid" do |env|
page = 1
videos, count = get_60_videos(ucid, page, auto_generated)
videos.select! { |video| !video.paid }
host_url = make_host_url(Kemal.config.ssl || CONFIG.https_only, env.request.headers["Host"]?)
path = env.request.path
@ -2173,6 +2174,7 @@ get "/channel/:ucid" do |env|
end
videos, count = get_60_videos(ucid, page, auto_generated, sort_by)
videos.select! { |video| !video.paid }
templated "channel"
end

View File

@ -317,10 +317,10 @@ def extract_items(nodeset, ucid = nil)
premium = false
end
if node.xpath_node(%q(.//span[contains(text(), "Get YouTube Premium")]))
paid = true
else
if !premium || node.xpath_node(%q(.//span[contains(text(), "Free episode")]))
paid = false
else
paid = true
end
items << SearchVideo.new(