最近在开发视频收藏功能时候,需要根据视频网站如优酷、酷6、土豆网的一个视频链接,能自动获取该视频的真实链接和相对应视频的截图。类似与校内的分享视频的功能~~~~

  下面以优酷为例:

  假设我们给任意一个优酷视频网址:http://v.youku.com/v_show/id_XMTA0NTM2MzI4.html

  要注意一点:优酷网上的视频地址较早些的是:http://v.youku.com/v_show/id_XNTM3MDg2ODA=.html

  注意上面的一点点区别,最后有个“=”。

  通过分析优酷视频网站的页面内容特点,利用php结合正则表达式,过滤获取我们想要的信息。具体参见下面功能函数。

  //优酷视频地址,如http://v.youku.com/v_show/id_XMTA0NTM2MzI4.html

  $link = ’http://v.youku.com/v_show/id_XMTA0NTM2MzI4.html‘;

  $host = 'youku.com';

  function getVideoInfo($link, $host) {

  $return = array();

  if('youku.com' == $host) {

  //分析视频网址,获取视频编码号

  preg_match_all("/id/_(/w+)[/=|.html]/", $link, $matches);

  if(!empty($matches[1][0])) {

  $return['flashvar'] = $matches[1][0];

  }

  //获取视频页面内容,存与$text中

  $text=file_get_contents($link);

  //获取视频标题

  preg_match("/<title>(.*?) - (.*)<//title>/", $text, $title);

  //获取优酷网上某一视频对应的视频截图,经分析,视频的截图的图片地址在该视频页面html代码里以<li class="download"></li>标记里的最后一个http://vimg....

  例如http://vimg20.yoqoo.com/0100641F4649B9D27344B00131 FBB6AFDF5175-7D35-930B-E43C-99C59F918E00

  preg_match_all("/<li class=/"download/"(.*)<//li>/",$text,$match2);

  preg_match("/http:vimg(.*)/|/"/>/",$match2[1][0 ],$imageurl);

  if (!empty($imageurl[1])) {

  $return['imageurl'] = 'http://vimg'.$imageurl[1];

  }

  if (!empty($title)) {

  $return['title'] = $title[1];

  }

  } elseif('ku6.com' == $host) {

  // http://v.ku6.com/show/bjbJKPEex097wVtC.html

  // http://v.ku6.com/special/index_3628020.html

  //对于酷6网,末尾以index_开头的地址需要另外分析其视频编码

  $text=file_get_contents($link);

  preg_match_all("///([/w/-]+)/.html/", $link, $matches);

  if(1 > preg_match("///index_([/w/-]+)/.html/", $link) && !empty($matches[1][0])) {

  $return['flashvar'] = $matches[1][0];

  }else{

  preg_match_all("/refer//(.*)//v.swf/",$text,$video url);

  $return['flashvar'] = $videourl[1][0];

  }

  preg_match("/<title>(.*?) - (.*)<//title>/", $text, $title);

  //经分析,酷六的视频截图地址在视频页面的<span class="s_pic“></span>标签之间

  preg_match_all("/<span class=/"s_pic/">(.*)<//span>/",$text,$imageurl);

  if (!empty($imageurl[1][0])) {

  $return['imageurl'] = $imageurl[1][0];

  }

  if (!empty($title)) {

  $return['title'] = $title[1];

  }

  }elseif ('tudou.com' == $host){

  //http://www.tudou.com/programs/view/_ke1lzCnBYw/

  $tudou = file_get_contents($link);

  preg_match_all("/view//([/w/-]+)///", $link, $matches);

  if(!empty($matches[1][0])) {

  $return['flashvar'] = $matches[1][0];

  }

  preg_match("/<title>(.*?) - (.*)<//title>/", $tudou, $title);

  preg_match_all("/<span class=/"s_pic/">(.*)<//span>/",$tudou,$imageurl);

  if (!empty($imageurl[1][0])) {

  $return['imageurl'] = $imageurl[1][0];

  }

  if (!empty($title)) {

  $return['title'] = $title[1];

  }

  }

  return $return;

  }

php分析抓取视频网站视频链接与截图[zz]相关推荐

  1. 网络爬虫---抓包分析,用抓包分析爬取腾讯视频某视频所有评论(Fiddler工具包的分享)

    抓包分析,用抓包分析爬取腾讯视频某视频所有评论(Fiddler工具包的分享) 文章目录 抓包分析,用抓包分析爬取腾讯视频某视频所有评论(Fiddler工具包的分享) 一.抓包分析 1.下载工具并安装 ...

  2. 使用javascript在各大视频网站一键抓取无水印m3u8格式视频并将视频下载成mp4格式(以Google抓取腾讯视频为例)

    两三天没有更新博客了,最近博主有点夏乏(其实是懒),今日在划水的时候无意中学到了使用javascrpit抓取m3u8格式视频的小技巧,因此进行延伸并作此博客进行记录.接下来,我将使用javascrip ...

  3. blob的真实地址怎么获得_使用Python抓取m3u8加密视频 续:获得index.m3u8 地址

    之前写<使用Python抓取m3u8加密视频>笔记的原因,是自己有几个视频想保存,但对于m3u8, .ts 文件拼接不熟悉,就尝试写个脚本练手. 今天看了回复,有同学想知道如何从视频网站上 ...

  4. python 爬取加密视频_使用Python抓取m3u8加密视频 续:获得index.m3u8 地址

    之前写<使用Python抓取m3u8加密视频>笔记的原因,是自己有几个视频想保存,但对于m3u8, .ts 文件拼接不熟悉,就尝试写个脚本练手. 今天看了回复,有同学想知道如何从视频网站上 ...

  5. python抓取腾讯视频弹幕_Python实战 | 如何抓取腾讯视频弹幕

    原标题:Python实战 | 如何抓取腾讯视频弹幕 当代年轻人的快乐是网络给的. 如果有人吐槽周末太无聊,他们一定会反驳: 是追剧不香吗? 是吃鸡不好玩吗? 周末辣么短,怎么会无聊呢? 诚然,追剧和游 ...

  6. Python爬虫实战,requests模块,Python实现抓取腾讯视频弹幕评论

    前言 利用Python实现抓取腾讯视频弹幕,废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: requests模块: pandas模块 以及一些Python自带 ...

  7. 在linux下vcd光盘提取,linux下抓取Vcd的视频文件[Linux安全]

    赞助商链接 本文"linux下抓取Vcd的视频文件[Linux安全]"是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判 ...

  8. python抓取视频违法吗,科学网—【python爬虫】抓取B站视频相关信息(一) - 管金昱的博文...

    昨天我在B站上写了这么一篇文章,但是被他们锁住了.无奈之下我复制到知乎上先保存起来 在这篇名为<三天学会用python进行简单地爬取B站网页视频数据>文章中我主要提到了两点在已知aid的情 ...

  9. Python爬虫实现抓取腾讯视频所有电影-源码【实战必学】

    用python实现的抓取腾讯视频所有电影的爬虫 1. # -*- coding: utf-8 -*-2. import re3. import urllib24. from bs4 import Be ...

  10. python怎么爬网站视频教程_python爬虫爬取某网站视频的示例代码

    把获取到的下载视频的url存放在数组中(也可写入文件中),通过调用迅雷接口,进行自动下载.(请先下载迅雷,并在其设置中心的下载管理中设置为一键下载) 实现代码如下: from bs4 import B ...

最新文章

  1. 如何在JavaScript中获取时间戳
  2. mysql计算某一天所在周或月的第一天和最后一天
  3. go int 转切片_DW-Go语言编程-Task06-数组、切片
  4. 压缩包安装mySQL 与 Qt中使用mySQL
  5. 密码学在区块链中的应用 【八】
  6. API:互联网是如何在幕后工作的?
  7. rdlc报表输入中文出现小方块
  8. 400本以上电子书、1000门以上课程会员免费看,快来领取!
  9. linux下virtualbox安装win7虚拟机无法调整分辨率
  10. 9 款最好的免费博客网站对比
  11. UE4设置人物移动和人物视角
  12. aac mediarecorder录制_Android音视频录制之MediaRecorder+camera
  13. 2022大宗商品现货交易所织梦网站模板源码+大气美观
  14. python正则表达式提取字符串中的书名_使用python正则表达式从字符串中提取名称...
  15. Matlab(将2维图片显示成3维图形)
  16. 电商环境下中小企业客户关系管理系统设计
  17. Keil MDK 又更新了啥子嘛?
  18. 尝鲜用 React Hook + Parcel 构建真心话大冒险简单页面
  19. ALIENTEK 战舰ENC28J60 LWIP和UIP补充例程(LWIP WEB有惊喜)
  20. 20万以内,下一个爆款电动车会是谁?

热门文章

  1. 多多店铺基础优化经验分享
  2. 使用Java编写银行账户类(面向对象思考实验)
  3. 三八节送女生什么礼物好?四款好看的蓝牙耳机推荐
  4. CGB2009-京淘项目day02
  5. 【推荐】老家中秋要贴对联?不慌,我立马写了一款免费且无限的对联生成器~
  6. webgis入门实战
  7. php 数组分块查找,laravel 控制器类DB的相关操作操作
  8. quartus II【如何进行顶层设计】
  9. 360进程管理器原理
  10. 【软件测试-6】 测试管理篇