美文网首页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