Use alternate thumbnail url for search page

This commit is contained in:
Omar Roth 2018-03-28 19:01:07 -05:00
parent f047f87100
commit e89f15a65c
2 changed files with 10 additions and 21 deletions

View File

@ -321,12 +321,13 @@ get "/search" do |env|
if root if root
video = {} of String => String video = {} of String => String
link = root.xpath_node(%q(div[contains(@class,"yt-lockup-thumbnail")]/a/@href)) id = root.xpath_node(%q(div[contains(@class,"yt-lockup-thumbnail")]/a/@href))
if link if id
video["link"] = link.content id = id.content.lchop("/watch?v=")
else else
video["link"] = "#" id = ""
end end
video["id"] = id
title = root.xpath_node(%q(div[@class="yt-lockup-content"]/h3/a)) title = root.xpath_node(%q(div[@class="yt-lockup-content"]/h3/a))
if title if title
@ -335,25 +336,13 @@ get "/search" do |env|
video["title"] = "Something went wrong" video["title"] = "Something went wrong"
end end
thumbnail = root.xpath_node(%q(div[contains(@class,"yt-lockup-thumbnail")]/a/div/span/img/@src))
if thumbnail && !thumbnail.content.ends_with?(".gif")
video["thumbnail"] = thumbnail.content
else
thumbnail = root.xpath_node(%q(div[contains(@class,"yt-lockup-thumbnail")]/a/div/span/img/@data-thumb))
if thumbnail
video["thumbnail"] = thumbnail.content
else
video["thumbnail"] = "https://dummyimage.com/246x138"
end
end
author = root.xpath_node(%q(div[@class="yt-lockup-content"]/div/a)) author = root.xpath_node(%q(div[@class="yt-lockup-content"]/div/a))
if author if author
video["author"] = author.content video["author"] = author.content
video["author_url"] = author["href"] video["ucid_url"] = author["href"]
else else
video["author"] = "" video["author"] = ""
video["author_url"] = "" video["ucid_url"] = ""
end end
videos << video videos << video

View File

@ -7,12 +7,12 @@
<% slice.each do |video| %> <% slice.each do |video| %>
<div class="pure-u-1 pure-u-md-1-4"> <div class="pure-u-1 pure-u-md-1-4">
<div style="overflow-wrap:break-word; word-wrap:break-word;" class="h-box"> <div style="overflow-wrap:break-word; word-wrap:break-word;" class="h-box">
<a style="width:100%;" href="<%= video["link"] %>"> <a style="width:100%;" href="/watch?v=<%= video["id"] %>">
<img style="width:100%;" src="<%= video["thumbnail"] %>"/> <img style="width:100%;" src="https://i1.ytimg.com/vi/<%= video["id"] %>/mqdefault.jpg"/>
<p><%= video["title"] %></p> <p><%= video["title"] %></p>
</a> </a>
<p> <p>
<b><a style="width:100%;" href="<%= video["author_url"]%>"><%= video["author"] %></a></b> <b><a style="width:100%;" href="https://youtube.com<%= video["ucid_url"]%>"><%= video["author"] %></a></b>
</p> </p>
</div> </div>
</div> </div>