怎么样下载 美拍视频? (meipai)

怎么样下载 美拍视频? (meipai)

美拍视频(meipai)下载的最好方法

目前有以下靠谱的下载美拍视频的方法:

网页在线美拍视频下载解析工具 (Meipai Video Downloader)

Chrome 浏览器插件, 支持数十种视频网站下载, 又方便又准确.

当然还可以加我的 微信公众号 JustYYUK 通过机器人问答交互方式来 下载视频.

IOS 用户可以通过 Workflow 来调用视频下载的工具

美拍视频地址解析原理

美拍视频 (meipai.com) 的 HTML代码里的头部 head 标签里有:

这两串 content 的字符串是一样的, 取其一即可. 大概能猜出最后需要通过 Base64 来解码, 这串字符串里就包含了加密的视频原URL地址. 在最新推出的 2.3.5 Chrome 强有力的视频下载插件中, 增添了对美拍视频的本地解析.

对这串视频地址字符串的解密代码的JS代码如下:

// http://www.meipai.com/media/596371059

if (domain.includes("meipai.com")) {

if (!ValidURL(video_url)) {

var tmp = "";

video_dom = document.querySelector("meta[property='og:video:secure_url']");

if (video_dom) {

tmp = video_dom.getAttribute("content");

} else {

video_dom = document.querySelector("meta[property='og:video']");

if (video_dom) {

tmp = video_dom.getAttribute("content");

}

}

if (ValidURL(tmp)) {

video_url = tmp;

} else {

function getHex(param1) {

return {

'str': param1.substring(4),

'hex': param1.substring(0, 4).split('').reverse().join('')

}

}

function getDec(param1) {

var loc2 = parseInt(param1, 16) + "";

return {

'head': loc2.substring(0, 2).split(''),

'tail': loc2.substring(2).split('')

}

}

function substr(param1, param2) {

var loc3 = param1.substring(0, parseInt(param2[0]));

var loc4 = param1.substring(parseInt(param2[0]), parseInt(param2[0]) + parseInt(param2[1]));

return loc3 + param1.substring(parseInt(param2[0])).replace(loc4, "");

}

function getPos(param1, param2) {

param2[0] = param1.length - parseInt(param2[0]) - parseInt(param2[1]);

return param2;

}

var dict2 = getHex(tmp);

var dict3 = getDec(dict2['hex']);

var str4 = substr(dict2['str'], dict3['head']);

var tmp = atob(substr(str4, getPos(str4, dict3['tail'])));

if (ValidURL(tmp)) {

video_url = tmp;

}

}

}

}

如果放服务端PHP脚本来解析美拍视频的话 代码类似:

function getHex($param1) {

return array(

'str' => substr($param1, 4),

'hex' => strrev(substr($param1, 0, 4))

);

}

function getDec($param1) {

$loc2 = hexdec($param1);

return array(

'head' => str_split(substr($loc2, 0, 2)),

'tail' => str_split(substr($loc2, 2))

);

}

function substr1($param1, $param2) {

$loc3 = substr($param1, 0, (integer)$param2[0]);

$loc4 = substr($param1, (integer)$param2[0], (integer)$param2[1]);

return $loc3 . str_replace($loc4, "", substr($param1, (integer)$param2[0]));

}

function getPos($param1, $param2) {

$param2[0] = strlen($param1) - (integer)$param2[0] - (integer)$param2[1];

return $param2;

}

function download($url) {

$doc = phpQuery::newDocumentFile($url);

$arr = array();

$tag = trim(strip_tags($doc->find("meta[property='og:video:secure_url']")->attr('content')));

if (is_good_url($tag)) {

return $tag;

}

$arr[] = $tag;

$tag = trim(strip_tags($doc->find("meta[property='og:video:url']")->attr('content')));

if (is_good_url($tag)) {

return $tag;

}

$arr[] = $tag;

$tag = trim(strip_tags($doc->find("meta[property='og:videosrc']")->attr('content')));

if (is_good_url($tag)) {

return $tag;

}

$arr[] = $tag;

foreach ($arr as $tmp) {

$dict2 = getHex($tmp);

$dict3 = getDec($dict2['hex']);

$str4 = substr1($dict2['str'], $dict3['head']);

$tmp1 = base64_decode(substr1($str4, getPos($str4, $dict3['tail'])));

if (is_good_url($tmp1)) {

return $tmp1;

}

}

return down($url);// 通过其它方法来尝试解析美拍视频

}

效果如下:

怎么样下载美拍视频?

当然也可以通过在线网页版本的美拍视频下载工具 (Meipai Video Downloader).

视频下载相关技术帖子

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

如何解决微博视频下载出现的403错误(Denied by Referer ACL)?

怎样通过 Workflow 应用来下载视频?

如何下载 Instagram 视频?

如何下载 汤不热 Tumblr 视频?

如何下载 91 (P*rn) 视频?

如何下载 微博/weibo秒拍miaopai视频?

如何下载 网页中的 视频? (万能视频解析下载技巧)

如何通过微信公众号机器人下载视频?

怎么样下载 美拍/meipai视频 (含 Javascript 代码)?

如何下载解析 爱拍视频? (aipai)

如何下载解析 快手视频? (kuaishou)

第一视频的解析技巧

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

说说我那复活的视频下载插件

如何下载TED视频?

视频下载工具

本文一共 324 个汉字, 你数一下对不对.

相关推荐