(转)一个网页视频下载工具的源码

By admin at 2021-01-31 • 0人收藏 • 1351人看过

这个收藏于群聊5月份的分享.

目前代码运行有点问题,但是不影响学习思路.哈

import fonts.fontAwesome;
import win.ui;
/*DSG{{*/
var winform = win.form(text="视频下载工具(点击视频链接即可下载)";right=759;bottom=469)
winform.add(
btnVideoInfo={cls="button";text="获取视频下载地址";left=511;top=24;right=732;bottom=60;font=LOGFONT(h=-16;name='FontAwesome');z=3};
editInfo={cls="richedit";left=29;top=83;right=735;bottom=445;autohscroll=false;edge=1;link=1;multiline=1;vscroll=1;z=1};
editVideoUrl={cls="edit";text="https://www.-------.com/watch?v=ZFA5Rax0ypU";left=27;top=30;right=499;bottom=59;edge=1;multiline=1;z=2}
)
/*}}*/

winform.btnVideoInfo.oncommand = function(id,event){
   var url = winform.editVideoUrl.text;
   var vid = string.match(url,"v=(\w+)");
   if(!vid){
       return winform.editVideoUrl.showErrorTip(,"请输入正确的视频地址");
   }
   
   winform.btnVideoInfo.disabledText = {'\uF254';'\uF251';'\uF252';'\uF253';'\uF250'}
   thread.invoke(
       function(winform,vid){
           import web.rest.jsonLiteClient;
           var http = web.rest.jsonLiteClient();
           
           var videoApi = http.api("https://www.--------.com/get_video_info?video_id=:video_id");
           var info = videoApi[vid].get();
           if(!info){
               winform.editInfo.text = "网络错误";
               winform.btnVideoInfo.disabledText = null;
           }
           
           winform.editInfo.text = "";
           winform.editInfo.print( "视频作者:",info.player_response.videoDetails.author);
           winform.editInfo.print( "视频标题:",info.player_response.videoDetails.title);
           winform.editInfo.print( "视频说明:",info.player_response.videoDetails.shortDescription);
           winform.videoTitle = info.player_response.videoDetails.title;
           
           for(i,v in info.player_response.streamingData.formats){
               if(!string.indexOf(v.mimeType,"video/mp4")){
                   continue;
               }
               
               winform.editInfo.print();
               winform.editInfo.print("视码质量:",v.qualityLabel);
               winform.editInfo.print("视频地址:",v.url);
           }
           
           winform.btnVideoInfo.disabledText = null;
       },winform,vid
   )
}

import fsys.dlg;
import inet.downBox;
winform.editInfo.onlink=function(message,href){
   if( message = 0x202/*_WM_LBUTTONUP*/ ) {
       var path = fsys.dlg.open("*.mp4|*.mp4","请选择下载路径",,winform,,fsys.path.validName(winform.videoTitle))
       if(!path) return;
       
       var downBox = inet.downBox(winform,"下载视频");
       downBox.download(href,path);
   }
}

winform.show();
win.loopMessage();


登录后方可回帖

登 录
信息栏
 私人小站

本站域名

ChengXu.XYZ

投诉联系:  popdes@126.com



快速上位机开发学习,本站主要记录了学习过程中遇到的问题和解决办法及上位机代码分享

这里主要专注于学习交流和经验分享.
纯私人站,当笔记本用的,学到哪写到哪.
如果侵权,联系 Popdes@126.com

友情链接
Aardio官方
Aardio资源网


才仁机械


网站地图SiteMap

Loading...