美文网首页Tasker
用Tasker解析Twitter视频地址

用Tasker解析Twitter视频地址

作者: 记忆水晶 | 来源:发表于2019-04-07 20:32 被阅读11次

使用Tasker制作Twitter下载器跟制作其他网站的下载器有所不同,这是因为Twitter网页本身并没有可以解析到的视频下载地址.
需要借用Twitter官方提供的api来下载视频
点击这里注册一个Twitter开发者账号:https://developer.twitter.com
有了账号后会提供开发用到的token来用于认证,把你的token替换掉下面的代码中就可以用了.

使用方法:

  1. 复制带视频的推文链接
  2. 复制视频播放时的视频地址
var token="AAAAAAAAAAAAAAAAAAAAABXesyegAAAAAA2mJuTUyoBiQiFqw9KIVwOZPoELi/N=djisfUIdUdIiIsU1ILUxIUI2UdIUIUuilljle0yH1LL232X";

var clip=global('CLIP')
var idpatt=/\d{19}/;
var id=idpatt.exec(clip);
var url="https://api.twitter.com/1.1/statuses/show.json?id=" + id[0] + "&tweet_mode=extended";

function gethttp(url,token) {
    var xhr = new XMLHttpRequest();
    xhr.addEventListener("readystatechange", function () {
        if (this.readyState === 4) {
           //flash("成功获取数据");//显示返回消息,可删除本行
        }
    });
    xhr.open("GET", url, false);
    xhr.setRequestHeader("Authorization", "Bearer " + token);
    xhr.send();
    return xhr.responseText;
}

var json=JSON.parse(gethttp(url));

var variants=json.extended_entities.media[0].video_info.variants;

var max=0; 
var videourl;

for (var i=0;i<variants.length;i++){
    
    var bitrate=variants[i].bitrate
    if(bitrate){
        if(bitrate>max){
            max=bitrate;
            videourl=variants[i].url
        }


    }
    
    
}

flash(videourl);

这样就可以解析出Twitter视频的下载地址(解析出来的时最大清晰度的地址)
有了地址就可以下载了,如果你想了解如何下载可以参考这篇文章

相关文章

网友评论

    本文标题:用Tasker解析Twitter视频地址

    本文链接:https://www.haomeiwen.com/subject/fvceiqtx.html