我喜欢vinepeek并且想要做得更好。
我有 Vine 链接,例如http://vine.co/v/bJqWrOHjMmU
,但这是指向页面的链接,而不是视频 URL。
我知道它是新的,但 Vine 是否有 API,或者我还能如何获取视频的 url?我仍然对 Vinepeek 如何获取视频 url 感到困惑?
它在页面源中;你可以用 JavaScript 小书签解析它
function qry(sr) {
var qa = [];
for (var prs of sr.split('&')) {
var pra = prs.split('=');
qa[pra[0]] = pra[1];
}
return qa;
}
var alpha = document.querySelector('[name=flashvars]').getAttribute('value');
var bravo = qry(alpha);
bravo.src;
结果
https://vines.s3.amazonaws.com/videos/08C49094-DFB4-46DF-8110-EEEC7D4D6115-1133-000000B8AD9BE72C_1.0.1.mp4?versionId=TQGtC5O7G7H34TleFA2LF0Er9tI8VZUe
JSON API 具有以下 URL:http: //vinepeek.com/video
您可以使用 Web 检查器/控制台/开发人员工具来检查源代码。
<video id="post_html5_api" class="vjs-tech" loop="" preload="auto" src="https://vines.s3.amazonaws.com/videos/08C49094-DFB4-46DF-8110-EEEC7D4D6115-1133-000000B8AD9BE72C_1.0.1.mp4?versionId=TQGtC5O7G7H34TleFA2LF0Er9tI8VZUe"></video>
网址是:
https://vines.s3.amazonaws.com/videos/08C49094-DFB4-46DF-8110-EEEC7D4D6115-1133-000000B8AD9BE72C_1.0.1.mp4?versionId=TQGtC5O7G7H34TleFA2LF0Er9tI8VZUe
这是一个简单的函数,我用来从 curl 结果中获取视频 src。 http://vine.co/v/bJqWrOHjMmU
function getVineVideoFromUrl($url) {
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
preg_match('/twitter:player:stream.*content="(.*)"/', $res, $output);
return $output[1];
}
结果
https://vines.s3.amazonaws.com/v/videos/08C49094-DFB4-46DF-8110-EEEC7D4D6115-1133-000000B8AD9BE72C_1.0.1.mp4?versionId=ms6ePoPeFm6NQZkeNHegV3k_ZLV4bz9x