// ==UserScript== // @icon http://weibo.com/favicon.ico // @name 微博视频下载助手 // @namespace 1649991905@qq.com // @author 猎隼丶止戈 // @description 下载微博视频 // @match *://weibo.com/tv/v/* // @require http://cdn.bootcss.com/jquery/1.8.3/jquery.min.js // @version 0.0.1 // @grant GM_addStyle // @downloadURL https://update.greasyfork.icu/scripts/30318/%E5%BE%AE%E5%8D%9A%E8%A7%86%E9%A2%91%E4%B8%8B%E8%BD%BD%E5%8A%A9%E6%89%8B.user.js // @updateURL https://update.greasyfork.icu/scripts/30318/%E5%BE%AE%E5%8D%9A%E8%A7%86%E9%A2%91%E4%B8%8B%E8%BD%BD%E5%8A%A9%E6%89%8B.meta.js // ==/UserScript== (function () { 'use strict'; /******************************css样式******************************/ //与元数据块中的@grant值相对应,功能是生成一个style样式 GM_addStyle('#down_video_btn{color:#fa7d3c;}'); //视频下载按钮的html代码 var down_btn_html = '
  • '; down_btn_html += ''; down_btn_html += ''; down_btn_html += ''; down_btn_html += ''; down_btn_html += 'i'; down_btn_html += '视频下载'; down_btn_html += ''; down_btn_html += ''; down_btn_html += ''; down_btn_html += ' '; down_btn_html += '
  • '; //将以上拼接的html代码插入到网页里的ul标签中 var ul_tag = $("div.WB_handle>ul"); if (ul_tag) { ul_tag.removeClass("WB_row_r3").addClass("WB_row_r4").append(down_btn_html); } var videoTool = { //获取文件名 getFileName: function (url, rule_start, rule_end) { var start = url.lastIndexOf(rule_start) + 1; var end = url.lastIndexOf(rule_end); return url.substring(start, end); }, //弹出下载框 download: function (videoUrl, name) { var content = "file content!"; var data = new Blob([content], { type: "text/plain;charset=UTF-8" }); var downloadUrl = window.URL.createObjectURL(data); var anchor = document.createElement("a"); anchor.href = videoUrl; anchor.download = name; anchor.click(); window.URL.revokeObjectURL(data); } }; $(function () { //获取播放器(video)对象 var video = $("video"); var video_url = null; if (video) { video_url = video.attr("src"); //获取视频链接地址 } //执行下载按钮的单击事件并调用下载函数 $("#down_video_btn").click(function () { if (video_url) { videoTool.download(video_url, videoTool.getFileName(video_url, "/", "?")); } }); }); })();