当我复制一个 YouTube 链接,例如这个链接 (http://www.youtube.com/watch?v=_Ka2kpzTAL8),并将其粘贴到 Facebook 状态更新中时,Facebook 会以某种方式抓取视频的静止画面。我想建立一个做同样事情的功能,但我真的不知道如何找到图像。
谁能指出我正确的方向?我对 PHP、Python、Ruby 或 Perl 持开放态度。
当我复制一个 YouTube 链接,例如这个链接 (http://www.youtube.com/watch?v=_Ka2kpzTAL8),并将其粘贴到 Facebook 状态更新中时,Facebook 会以某种方式抓取视频的静止画面。我想建立一个做同样事情的功能,但我真的不知道如何找到图像。
谁能指出我正确的方向?我对 PHP、Python、Ruby 或 Perl 持开放态度。
好的,找到了!
获取此链接:http://i4.ytimg.com/vi/something/hqdefault.jpg
并用 Youtube 上的视频 ID 替换某些内容。对于较小的图像,只需删除hq
URL 的一部分。
我也可以确认这个实现是两种方式。我用它一个 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