抓取优酷土豆新浪等网站视频缩略图

By
WP札记

最近遇到一个比较奇特的要求,也是我一直在考虑的问题,就是获取视频网站的视频缩略图。这样,可以很方便对带视频的界面进行美化。

常常看到优酷等网站本身或者给其他网站定制的内容中出现视频缩略图,但是一番搜索之后发现优酷本身好像没有开放类似的接口给普通用户。所以这个问题就被搁置下来了。最近有客户需要大量使用视频,而且是第三方的视频网站,并且在页面中也要应用视频截图。所以一番摸索之后发现有个好东西:视频抓取工具。

原作者页面视频抓取工具

演示地址

实际使用效果

VideoUrlParser

使用方法

之后,只需要在合适的地方输出$info就可以了。

应用示例

由于不能根据直接输入的frame视频框架来获取截图,因此必须显式地提供视频播放地址。这里我提供一个思路:
为需要的文章类型添加一个meta box(把以下代码扔functions.php里 2013/5/5 修正自定义box不能保存的问题

接着,就可以在后台看到这样的meta box
VideoUrl

输入你想用的视频缩略图,然后在前台显示即可(我是写在了文章的主循环内)

info含有的几个值,分别是img(用于视频缩略图),title(视频标题),url(地址),swf(视频swf播放地址)。我只用到了img和swf地址。具体的可以根据自己的需要进行调整。

感谢原作者。

0

Comments: 86

  1. 感谢博主,也感谢原作者

    2012年12月23日
  2. 为什么代码扔functions.php里就错误腻

    2013年01月02日
  3. 很好的解决方案

    2013年01月06日
  4. 好东西~代码还是不太明白,不过晓得怎么在后台添加自定义区块了,谢谢分享~

    2013年01月08日
  5. 直接qq截图。。。赫赫

    2013年01月09日
  6. 我表示很长一段时间都是很苦逼的去截图! :cry:

    2013年02月26日
  7. 我一直用那个人的demo来手动抓取视屏图片,今天终于看到自动的办法了,貌似那个人的程序好像升级了,升级版没有提供分享。

    2013年03月05日
    • @不亦乐乎 可能是要商用吧~~看他有做付费扩展的趋势。

      @venmax 2013年03月05日
  8. 您好!我是菜鸟,师傅你能不能说清楚点第二段代码是不是还有把/VideoUrlParser.class.php放到主题目录里,然后怎么用?

    2013年03月10日
    • @天天分享网 然后比如你想放到首页,就打开index.php,在合适的地方输入
      < ?phprequire_once "VideoUrlParser.class.php"; $url = "http://v.youku.com/v_show/id_XMjkwMzc0Njg4.html"; $info = VedioUrlParser::parse($url); echo $info[img];?>
      其中$URL可以替换成想要的~

      @venmax 2013年03月10日
  9. 先来看看鄙人的wordperss小站http://www.everyshare.cn/
    鄙站主要以视频为主,每篇文章里都有一张视频的截图http://www.everyshare.cn/2013/03/08/924.html
    看上去感觉很不好看,但又考虑到小站首页http://www.everyshare.cn/要显示缩略图,文章里不得不放一张图片,然后来获取做首页的缩略图,最近在http://axiu.me/learning_notes/get_video_thumb_from_videosites/comment-page-2/看到这篇教程,但本人一点PHP知识都没,无法应用这篇教程来解决鄙站的缩略图问题,现在用现金请博主帮忙弄一下,小弟感激不尽qq517331016

    2013年03月10日
  10. 学习了!正在找这个

    2013年03月26日
  11. @axiu @axiu 问个问题,怎么加个判断是视频文章就调用这个缩略图功能,不是就调用我的其他方式缩略图呢?谢谢

    2013年05月02日
    • @SEV $video_url = get_post_meta( $post->ID, ‘videourl’, true );这段可以取出videourl的内容,然后判断它是否为空: if($video_url == “”),如果是就输出其他缩略图,不是(有这个视频的缩略图)就输出“这个”缩略图

      @venmax 2013年05月05日
    • @axiu 收到,我测试一下看看,3Q

      2013年05月05日
    • @axiu
      Fatal error: Call to undefined function curl_init() in D:\eigicphp\apache\htdocs\wordpress…..\VideoUrlParser.class.php on line 433 这个是什么错误呢?估计这个还是不太好用哦! :arrow:

      2013年05月05日
    • @SEV 那是php的函数,跟插件无关。你得加载php_curl.dll。在php.ini 文件里面找到php_curl.dll把前面的注释去掉

      @venmax 2013年05月05日
    • @axiu 原来如此,我是在本地测试的,我说怎么回事哦!再次感谢!哈啊哈左边那个评论很不错呢! :razz:

      2013年05月05日
    • @SEV 谢谢~~

      @venmax 2013年05月05日
  12. 后台输入的视频地址保持不了不知道为什么?谢谢

    2013年05月02日
    • @SEV 和你一样啊,怎么解决啊

      2013年05月04日
    • @lll @SEV 不好意思,忘了段代码,已加上……

      @venmax 2013年05月05日
    • @axiu 谢谢了哦,嘿嘿 :razz:

      2013年05月05日
  13. 我也在用这个

    2013年07月23日
  14. 把以下代码扔functions.php里 怎么提示错误 是不是复制出问题?

    2013年09月15日
    • @木木 看看是不是有语法错误,比如括号啥的

      @venmax 2013年09月15日
  15. 有一点小问题,不过搞定了,谢谢了 :razz:

    @Wenjie_Chan 2013年10月15日

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

:razz: