小赖子的英国生活和资讯

梨视频(PearVideo)下载解析的方法和技巧

阅读 桌面完整版

梨视频(PearVideo)下载的最好方法

以下几种都是下载解析梨视频(PearVideo)的靠谱方法:

分析梨视频(PearVideo.com) 的HTML代码发现 视频的地址写在 Javascript 标签里:

1
var contId="1050733",liveStatusUrl="liveStatus.jsp",liveSta="",playSta="1",autoPlay=!1,isLiving=!1,isVrVideo=!1,hdflvUrl="",sdflvUrl="",hdUrl="http://video.pearvideo.com/mp4/short/20170320/cont-1050733-10294549-hd.mp4",sdUrl="http://video.pearvideo.com/mp4/short/20170320/cont-1050733-10294549-sd.mp4",ldUrl="http://video.pearvideo.com/mp4/short/20170320/cont-1050733-10294549-ld.mp4",srcUrl="",vdoUrl=srcUrl,skinRes="//www.pearvideo.com/domain/skin",videoCDN="//video.pearvideo.com";
var contId="1050733",liveStatusUrl="liveStatus.jsp",liveSta="",playSta="1",autoPlay=!1,isLiving=!1,isVrVideo=!1,hdflvUrl="",sdflvUrl="",hdUrl="http://video.pearvideo.com/mp4/short/20170320/cont-1050733-10294549-hd.mp4",sdUrl="http://video.pearvideo.com/mp4/short/20170320/cont-1050733-10294549-sd.mp4",ldUrl="http://video.pearvideo.com/mp4/short/20170320/cont-1050733-10294549-ld.mp4",srcUrl="",vdoUrl=srcUrl,skinRes="//www.pearvideo.com/domain/skin",videoCDN="//video.pearvideo.com";

这里有三个变量用于分别保存高清 hdUrl, 标清sdUrl 和普通 ldUrl. 这时候直接用正则表达式来匹配整个视频地址的HTML字符串即可, 其中通过客户端 Chrome浏览器插件 Video URL Parser 本地解析的关键JS代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
var PearVideoDownload(url) {
    var tmp = [];
    // 正则表达式匹配 hdUrl, sdUrl 和 ldUrl
    var re = /[hsl]dUrl=[\"\']([^\"\']*)[\'\"]/ig;
    var found = re.exec(html);
    while (found != null) {
        if (ValidURL(found[1])) { // 如果是有效视频地址
            tmp.push(CheckURL(found[1]));
        }
        found = re.exec(html); // 匹配下一个
    }
    return tmp; // 返回所有有效视频
}    
var PearVideoDownload(url) {
    var tmp = [];
    // 正则表达式匹配 hdUrl, sdUrl 和 ldUrl
    var re = /[hsl]dUrl=[\"\']([^\"\']*)[\'\"]/ig;
    var found = re.exec(html);
    while (found != null) {
        if (ValidURL(found[1])) { // 如果是有效视频地址
            tmp.push(CheckURL(found[1]));
        }
        found = re.exec(html); // 匹配下一个
    }
    return tmp; // 返回所有有效视频
}    

服务端远程解析梨视频的PHP代码类似:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function PearVideoDownload($url) {    
  $doc = phpQuery::newDocumentFile($url);   
  $html = pq($doc)->html(); //获取视频HTML字符串
  $tmp = array();   
  // 正则表达式匹配梨视频的 hdUrl, sdUrl 和 ldUrl
  if (preg_match_all('~[hsl]dUrl=[\\"\\\']([^\\"\\\']*)[\\\'\\"]~i', $html, $matches)) {
    foreach ($matches[1] as $m) {
      if (is_good_url($m)) { // 如果视频地址有效
        $tmp[] = $m; 
      }
    }
  }
  return $tmp;
}
function PearVideoDownload($url) {    
  $doc = phpQuery::newDocumentFile($url);   
  $html = pq($doc)->html(); //获取视频HTML字符串
  $tmp = array();   
  // 正则表达式匹配梨视频的 hdUrl, sdUrl 和 ldUrl
  if (preg_match_all('~[hsl]dUrl=[\\"\\\']([^\\"\\\']*)[\\\'\\"]~i', $html, $matches)) {
    foreach ($matches[1] as $m) {
      if (is_good_url($m)) { // 如果视频地址有效
        $tmp[] = $m; 
      }
    }
  }
  return $tmp;
}

视频下载相关技术帖子

视频下载相关的几个帖子:

强烈推荐

微信公众号: 小赖子的英国生活和资讯 JustYYUK

阅读 桌面完整版
Exit mobile version