当我复制YouTube链接时(例如,像这样)(http://www.youtube.com/watch?v=_Ka2kpzTAL8),并将其粘贴到Facebook状态更新中,Facebook以某种方式抓住了一段视频。我想建立一个功能,做同样的事情,但我真的不知道如何找到图像。从YouTube视频页面刮掉图像
任何人都可以指向正确的方向吗?我对PHP,Python,Ruby或Perl开放。
当我复制YouTube链接时(例如,像这样)(http://www.youtube.com/watch?v=_Ka2kpzTAL8),并将其粘贴到Facebook状态更新中,Facebook以某种方式抓住了一段视频。我想建立一个功能,做同样的事情,但我真的不知道如何找到图像。从YouTube视频页面刮掉图像
任何人都可以指向正确的方向吗?我对PHP,Python,Ruby或Perl开放。
好吧,找到它了!
请点击此链接:http://i4.ytimg.com/vi/something/hqdefault.jpg
并用Youtube上的视频ID代替。对于较小的图片,只需删除网址的hq
部分即可。
我也可以确认这个实现是两种方式。我用它Ruby屏幕刮板(搜索应用程序)@http://stripsearch.me
# search10b Youtube crawl9
@search10a1 = search_array[1]
if search_array[1].present?
@results_9b = []
params_9b = search_array[1].split.map(&:downcase).join('+')
search_url_yt_9b = url_9b << params_9b
doc_9b = Nokogiri::HTML(open(search_url_yt_9b).read, nil, 'utf-8')
entries_9b = doc_9b.css('.yt-ui-ellipsis-2.spf-link')
if entries_9b.size != 0
entries_9b.each do |entry_9b|
title = entry_9b['title']
li = "https://www.youtube.com"
nk = entry_9b['href']
link = li << nk
img_src = entry_9b['href']
uid = img_src.split('=').last
precede_url = "http://i4.ytimg.com/vi/"
append_url = "/hqdefault.jpg"
img_url = precede_url << uid << append_url
precede_tag = "<img src="
append_tag = ">"
img = precede_tag << img_url << append_tag
@results_9b.push(title, link, img)
end
else
@error_9b = "no results found here for " + params_9b
end
end
我走得更远一点。我想我可能会看看Facebook中出现的缩略图的网址。相同的URL在YouTube页面的标记中出现为'。现在我只需要弄清楚如何获得这一点。 – 2012-04-04 18:34:02
嗯......我帮不了你,但如果你在Chrome浏览器中找到一个视频,然后点击你的设置 - >工具 - >开发工具 - >资源,你可以看到每个视频有一个框架列表。正如你所指出的,它们中的大多数都位于ytimg.com上。 – elliottbolzan 2012-04-04 18:35:44