free-ss.site 生成全部链接

将所有分享ss链接全部显示,方便统一复制使用

目前为 2018-02-02 提交的版本。查看 最新版本

// ==UserScript==
// @name         free-ss.site 生成全部链接
// @version      0.3
// @description  将所有分享ss链接全部显示,方便统一复制使用
// @author       dolacmeo
// @match        https://free-ss.site/
// @require      https://cdn.jsdelivr.net/npm/[email protected]/base64.min.js
// @run-at       document-end
// @namespace http://tampermonkey.net/
// ==/UserScript==
// @0.3   2017-2-2    随站更新,现从表格直接读取数据生成链接
// @0.2.1 2017-1-31   修复bug,备注名称加入当前日期
// @0.2   2017-1-31   不直接显示连接,变为两个复制按钮,点击即可复制所有链接,新增SSR链接(带备注与分组信息)
// @0.1   2017-1-26   成功打开页面后直接展示所有ss链接

(function() {
    $(document).ready(function() {
        // 载入HTML
        var ss_links = "<p id='ss-links' style='border-style:double;text-align:left;display:none'></p>";
        var ssr_links = "<p id='ssr-links' style='border-style:double;text-align:left;display:none'></p>";
        var link_btn = "<ul><li class='aff'><p style='margin: 0;' id='link_num'></p></li><li class='aff'><button id='btn_ss'>复制所有SS链接</button></li><li class='aff'><button id='btn_ssr'>复制所有SSR链接</button></li></ul>";
        $(".main").append('<textarea id="input" style="position: absolute;top: 0;left: 0;opacity: 0;z-index: -10;"> </textarea>');
        $(".main").append(ss_links);
        $(".main").append(ssr_links);
        $(".main").prepend(link_btn);
        $("#link_num").html("复制之后可使用剪贴板批量导入");
        // 将数据处理成链接
        function make_links(datas){
            ss_links_str = "";
            ssr_links_str = "";
            var d = new Date();
            var date_str = d.toISOString().slice(0,10)+'_';
            $.each(datas, function(i, data){
                var ss = 'ss://'+Base64.encodeURI(data[4]+':'+data[3]+'@'+data[1]+':'+data[2])+'#'+data[6]+'('+data[0]+'@'+date_str+data[5]+')',
                    ssr = 'ssr://'+Base64.encodeURI(data[1]+':'+data[2]+':origin:'+data[4]+':plain:'+Base64.encodeURI(data[3])+'/?remarks='+Base64.encodeURI(data[6]+'('+data[0]+'@'+date_str+data[5]+')')+'&group=ZnJlZS1zcy5zaXRl');
                $("#ss-links").append(ss+'<br>');
                $("#ssr-links").append(ssr+'<br>');
                ss_links_str = ss_links_str + ss + '\n';
                ssr_links_str = ssr_links_str + ssr + '\n';
            });
        }
        // 获取表格数据
        function ssdata(){
            var ss_table = $('#ss').DataTable();
            return ss_table.data();
        }
        function copy(str){
            var input = document.getElementById("input");
            input.value = str; // 修改文本框的内容
            input.select(); // 选中文本
            document.execCommand("copy"); // 执行浏览器复制命令
            alert("链接复制成功");
        }
        document.getElementById('btn_ss').addEventListener('click',function(ev){
            make_links(ssdata());
            copy(ss_links_str);
        });
        document.getElementById('btn_ssr').addEventListener('click',function(ev){
            make_links(ssdata());
            copy(ssr_links_str);
        });
    });
})();