1251981.jpg

梦回缘某空

GF  2020-08-21 16:46
(已退坑,无法二次补档)

115秒传技术(技术讨论)

看到论坛一位老哥发了一下115的秒传生成和转存教程分享,试着去弄了下,结果发现转存可以,生成的话没有看见按钮。

原帖:(第二页)
https://bbs.north-plus.net/read.php?tid=916536&page=e&#a

"https://greasyfork.org/zh-CN/scripts/386724-115转存助手
1) 登录115,选择你需要分享的文件或文件夹,发现会多了个分享SHA1的功能,点击后会自动生成转存链接。

2) 打开新任务->链接任务 ,会发现多了个转存按钮,然后提交合法的链接(格式:文件名|文件大小|文件HASH|文件块HASH)。

测试链接:

115://win10.iso|3979773952|A148ECE9F1FBFC83238D15DEB15C04DD3974BA59|8087C65A593A3348B8B6B3EC79292E84959C99FE

3)转存成功后默认会将文件转存至用户115盘根目录下的转存文件夹中,可打开浏览器控制台查看文件转存状态。“

可是呢我一直没有看到”分享SHA1“的按钮,转存按钮可见,就很奇怪

有用115的大佬们也去试试看吧,看看有没有”分享SHA1“的按钮



1251981.jpg

梦回缘某空

B1F  2020-08-21 16:50
(已退坑,无法二次补档)
对了,手机端115每天可通过摇一摇(摇手机)的方式得到随机空间,一般是5-20G

看论坛有人还不知道就发一下

Screenshot_20200718012903_edited.jpg

Paper Plane

B2F  2020-08-21 16:51
(分流相关均可以私信联系。今后一般不参与讨论。)
我这里一般是1-5G。。。

20200621074431_bgqiu.jpg

xepo

B3F  2020-08-21 16:51
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)
这个sha1分享要文件列表显示,

然后在更多的旁边有个分享SHA1,就可以分享了。

链接分享,不喜勿喷
115://工口按摩店.mp4|189780185|A725BB52C9214135BD3EC6A11BC0737A20AA5765|CBEF6AAA283F9CDAE7A352921AD1B73F2711298B

因为115显示的是大图标,所以我们要换成列表显示

20200621074431_bgqiu.jpg

xepo

B4F  2020-08-21 16:53
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)
在文件左边有一个向下的箭头,↓ 。点击切换视图列表,即列表

1290406.jpg

  

图片:
不知道你跟我是不是同一个脚本,鼠标悬停哪个文件就会出现了

1251981.jpg

梦回缘某空

B6F  2020-08-21 16:56
(已退坑,无法二次补档)

回 5楼(已注销用户) 的帖子

出现了,但是点击没有连接出来这就。。。

20200621074431_bgqiu.jpg

xepo

B7F  2020-08-21 16:56
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)
[url]https://greasyfork.org/zh-CN/scripts/413520-115%E8%BD%AC/url]
就是这个,我这边显示缩略图,换成列表显示就行了,这样分享文件就不会和谐了好像。
这是我修改的版本。

20200621074431_bgqiu.jpg

xepo

B8F  2020-08-21 17:00
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)

1.先选中文件,2.再点击分享sha1

1251981.jpg

梦回缘某空

B9F  2020-08-21 17:01
(已退坑,无法二次补档)
可以解决了,我用自己的浏览器可以,115浏览器好像不行

924098.jpg

barista

話説現在115怎麽樣?還是在115大量分享的時代用過
聽説115的離綫好棒好棒的.就是不知道價格怎樣

1251981.jpg

梦回缘某空

B11F  2020-08-21 17:11
(已退坑,无法二次补档)

回 10楼(barista) 的帖子

挺贵的,一个星期的会员都30多吧

8.gif

Strong chemical

115转存挺好用,但是数量多的文件一次转存有时候有丢失文件,所以要比对文件数量对不对。

除了AV资源很少看见有人放115转存资源

20200621074431_bgqiu.jpg

xepo

B13F  2020-08-21 17:16
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)
sha1分享只能一个文件,好像不能多文件。文件夹分享好像也不行,百度秒传也没有分享文件夹。
百度存的是md5,115是sha1.所以百度的文件不能存到115。

924098.jpg

barista

回 11楼(梦回缘某空) 的帖子

一個星期30多.月供過百.
這價格確實有點不太hold得住
離綫的話是怎麽?會員隨便還是和以前那種有個額度或是CD之類的?

none.gif

啊yiyayiya~

回 14楼(barista) 的帖子

有额度
之前有个Bug 花了30块钱弄了200多个离线额度 直接差点被当成DDOS

然后不到一个星期火速修复 我5天下了不多,也就1个多T

none.gif

啊yiyayiya~

回 13楼(xepoooo) 的帖子

这两个文件数据库都不通的 怎么互相转 笑了
转存的基本原理

20200621074431_bgqiu.jpg

xepo

B17F  2020-08-22 21:09
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)
115可以批量分享SHA1的,选中文件夹分享,然后会生成txt文件


有爱自取,这是futa mmd
115://PACER TEST ANIMATION 2.mp4|57607431|F9B22AA7DEC1BBF6DFBA62CA4AA6D6C9FB3B9923|CB0ACFFBE49584A514AD6C5B2A2CD65E0FB8B001
115://[FUTANARI] BASS KICK [REMIX 6].mp4|58017034|E8A35174A7233938E5E4B8EB40488153650B8D49|C99CA13DBA5A24365D70734AAB18309D323DF806
115://[FUTANARI] LEWD DAYDREAM.mp4|41943040|8AD887AF02A15B2EC7E687B66D91A0AD1EB2FD72|74CA026DE310B34AFBBB0883167D3009E5BD5F7D
115://[FUTANARI] CASTING COUCH.mp4|54898712|F4B486C09D95A17D2C9B115CB5F0EB7C237DE8F1|674C75404C9B7CB055E9CAB4255A5D0CB1237283
115://FUTANARI TEST ANIMATION 1.mp4|43263402|2186944F6813B6BD571964D5B0949CA87E4B8C96|D0D19AF7FFFD0F5F050283EC913A62D63471D47A
115://LEWD KNIGHT.mp4|56506855|FA2D4D1E1A051EF60B88F1653CCC23BC7740F4EA|9C3084BDB6E0896BA6F243D3BA6003DF62A9897B
115://[FUTANARI] LEWD VIRUS [NEKO NEWS].mp4|70792760|F2C68E32AC059B8A8DDD5A5AC6F1D795A21FE22D|625003D51DFDD5B843F24D7513E5F36116F7C29F
115://[FUTANARI] FUN AT WORK.mp4|79841965|4313521337A2367E077BFF6C9EF60E42978073B7|72129CF292A02E64901776D5D0C60C0B66F20212
115://FUTANARI VIBES ANIMATION.mp4|71813223|20A10A4CFDF574F5557E322358D20CC3FA6700D7|F8851F072B6E092E673FEA72CCD2EAC3FBE376B9
115://[FUTANARI] LEWD NURSE.mp4|66291424|C92EBAB5D66905A1CD26F6B41AA4B35B2B1D666A|FE34F797D539B90E2A6E00F6FD07225CBA8B1D2C
115://[FUTANARI] THREESOME.mp4|81618194|A3C27EE4B31A1BA520BA03F3B0ABA0D46F8C6492|7E5E1CC14C1488D3D0D25C75AF1EFDFA593E419A
115://[FUTANARI] LOVE BAR [REMIX 5].mp4|78506721|18419827DF211C392973341DE0758F07F5DDE56E|17EE592DF9766D533767566EBCB9F0001956F575
115://[FUTANARI] LEWD CAPTAIN.mp4|84587654|7C38A7384E047D86303829A98F50ADF82944A153|9D6C62FDEB1C38AD137EF4890FDAA2B7E8175748
115://[FUTANARI] LEWD ANGEL.mp4|90898521|EFF0F4E51375C88FD9B043C18AA19F7576F0313D|D3F1F82F19ED179DA72F5B5A5FCDA4DE5B5B646F
115://[FUTANARI] LEWD MASSEUSE.mp4|85694456|1CEF9C0EE85C420B57A24367EC3E828BA1A240C2|A57B15CF673FCF99989CA4837B86132290D89F28
115://[FUTANARI] PARTY EVERYDAY [REMIX 3].mp4|99627590|B72964DFBC1F2E6E65F6FA1AD7FAB40FED0035E9|0D8BE7D80D502D0ECE081A25F074F64E7A9B4174
115://[FUTANARI] LEWD TREATMENT.mp4|102051035|0E6394E9518989E3EF0FD8231B2E4BCF253187E3|5EAFBF2061A14EB7CA8879E01A40632DCF52BE57
115://[FUTANARI] FUTA警察.mp4|103630703|3869A97C06E9E8E2925EBF219D5B6E9D8A615100|3A295544113139D7025E138DDCA08B3B391EDC19
115://FUTANARI AFTER PARTY REMIX.mp4|124410383|FC61D0623254D3AE632A1C4525DE34F08E71670A|10F840CB5CDE834175896D953BDF650AA80526B8
115://[FUTA] VIP夜总会[REMIX 4].mp4|127126786|52AEE911DAC19A4D960C72C809D942537B610369|271AF87D7699BB9FF5C95CC18CD63A9FCCEB54FA
115://[FUTANARI] LEWD STRIP CLUB.mp4|133855400|6D4363FD627885F4FEDF644E8B72C5142540CBD6|084C51A9891B8C55F2143603692DC7CE0BB6BF2C
115://[FUTANARI] FUN IN ELEVATOR.mp4|139762773|A43EE0EFD2C42A81B0A45F856F5422C9DD13782A|53213BE1BCA333142CE95F02D469012850AED0D8
115://[FUTANARI] FUTA POLICE 2.mp4|141005478|29F5293F757D2D926CE41E0B1532724E18E812A1|74747A74960545A49DBFF11B218FD925424AF134
115://[FUTANARI] LEWD MIKU.mp4|126812987|98B819D4B5A3B93D8F81F956492F19A328F7E895|87D755F44746175FB2B1C5DC9DE5C91849E26F31
115://[FUTANARI] U GOT THAT TEST ANIMATION 3.mp4|237108882|469A74351C6A252DC484DC11698794FCF35EA5E4|09215A8FC0C649B11973DD104AAB51C7D9AF9A9A
115://[FUTANARI] FELINE THE BLUE.mp4|160226069|72F5F5BE8B7B496518D0B94D998E79CC38ADCEFC|D7148C2597565CAB1F289186EB3B327DB02CD577
115://[FUTANARI] LEWD GAME SHOW.mp4|199327904|3188D4FDD40ECB5788B20AE9977CC2EF88725385|283AC87B7E055BB20AB9AAA0749A9458BDC3A1C0
115://[FUTANARI] GLORYHOLE.mp4|240250064|5A2023E251E2CD1ECEFAF27FE16F24349035A0FF|072F500A644F575D4F2D0CC9A2E535DC7A77AC98
115://[FUTANARI] UP & DOWN [REMIX 2].mp4|192450848|1B6592DAE6F467E856EE47439B50F2E936E9F38B|5AE5D585DD6C5915538EFFD8B57DC7A68DCBF90C
115://[FUTANARI]万圣节特别.mp4|188131930|D7072576D350DCF4C62E68EF327B8C453120221C|8AD03C410619BA4D9F96F15600BB11EA63EEF578
115://[FUTANARI] EXTENDED LEWD SCENES.mp4|526445685|A36269E5373D1D4393B9C97552FFBE42F7BF0E43|0123526D3AE0B9229245076E68CC587B08960663

多木知春


20200621074431_bgqiu.jpg

xepo

B19F  2020-10-14 14:02
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)
没人讨论

732385.png

DKGeneral

B20F  2020-10-14 15:26
(无可救药的足控袜控TK控痒控)
不错,收藏了

LfWXH1.gif

fviewer

B21F  2020-10-14 15:27
(西部快枪手,荒野大嫖客)
115用不起,天翼云不错

none.gif

cfee4c90

据说会被封号?

20200621074431_bgqiu.jpg

xepo

B23F  2020-10-14 15:41
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)

回 22楼(cfee4c90) 的帖子

不会的。不会封号
该脚本已失效

20200621074431_bgqiu.jpg

xepo

B24F  2020-10-16 21:48
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)
我把脚本发在这里吧

20200621074431_bgqiu.jpg

xepo

B25F  2020-10-16 21:48
(吾心吾行澄如明镜,所作所为皆为正义!我が心と行動に一点の曇 ..)
// ==UserScript==
// @author       T3rry
// @name         115转存助手
// @namespace    Fake115Upload
// @version      1.4.3
// @description  115文件转存
// @match        https://115.com/*
// @grant        GM_xmlhttpRequest
// @grant        unsafeWindow
// @grant        GM_log
// @connect      proapi.115.com
// @connect      webapi.115.com
// @connect      115.com
// @require      https://cdn.bootcss.com/jsSHA/2.3.1/sha1.js
// @require      https://greasyfork.org/scripts/5392-waitforkeyelements/code/WaitForKeyElements.js?version=115012
// ==/UserScript==

(function() {
    'use strict';

    // unsafeWindow.browserInterface=[];
    //  console.log(unsafeWindow.browserInterface);
    //  unsafeWindow.browserInterface.LoginEncrypt = 1;

    //   console.log(unsafeWindow.browserInterface.LoginEncrypt);
    var str=document.URL;
    var hProtocol="115://";
    var StoreFolder="转存";
    window.CID=0;
    waitForKeyElements("div.file-opr", AddShareSHA1Btn);
    waitForKeyElements("div.dialog-bottom", AddDownloadSha1Btn);


    var style = document.createElement("style");
    style.type = "text/css";
    var text = document.createTextNode("*{margin:0;padding:0;}  .pp_align{font-size: 12px;line-height:30px;font-weight: 500;text-align:center;border:1px solid #D1D4D6} .pub_switch_box{font-size: 0;display: inline-block;} .pub_switch { display: none;} .pub_switch + label {display: inline-block;position: relative;width: 56px;height: 32px;background-color: #fafbfa;border-radius: 50px;-webkit-transition: all 0.1s ease-in;transition: all 0.1s ease-in;} .pub_switch  + label:after {content: ' ';position: absolute;top: 0;width: 100%;height: 100%;-webkit-transition: box-shadow 0.1s ease-in;transition: box-shadow 0.1s ease-in;left: 0;border-radius: 100px;box-shadow: inset 0 0 0 0 #eee, 0 0 1px rgba(0,0,0,0.4);} .pub_switch  + label:before {content: ' ';position: absolute;top: 0px;left: 1px;z-index: 999999;width: 32px;height:32px;-webkit-transition: all 0.1s ease-in;transition: all 0.1s ease-in;border-radius: 100px;box-shadow: 0 3px 1px rgba(0,0,0,0.05), 0 0px 1px rgba(0,0,0,0.3);background: white;} .pub_switch:active + label:after {box-shadow: inset 0 0 0 20px #eee, 0 0 1px #eee;} .pub_switch:active + label:before {width: 37px;} .pub_switch:checked:active + label:before {width: 37px;left: 20px;} .pub_switch  + label:active {box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);} .pub_switch:checked + label:before {content: ' ';position: absolute;left: 31px;border-radius: 100px;} .pub_switch:checked + label:after {content: ' ';font-size: 1.5em;position: absolute;background: #2777F8;box-shadow: 0 0 1px #2777F8;}");
    style.appendChild(text);
    var head = document.getElementsByTagName("head")[0];
    head.appendChild(style);

    window.linkText=""

    window.reqcount=0

    window.cookie=document.cookie




    function delay(ms) {

        if(ms==0)
        {
            ms=1000*(Math.floor(Math.random()*(11-4))+4);
            console.log(ms);

        }
        return new Promise(resolve => setTimeout(resolve, ms))
    }
    function download(filename,content,contentType) {
        if (!contentType) contentType = 'application/octet-stream';
        var a = document.createElement('a');
        var blob = new Blob([content], { 'type': contentType });
        a.href = window.URL.createObjectURL(blob);
        a.download = filename;
        a.click();
    }
    function SetListView()
    {
        GM_xmlhttpRequest({
            method: "POST",
            url: 'https://115.com/?ct=user_setting&ac=set',
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
            },
            data: PostData({
                setting:'{"view_file":"list"}'
            }),
            responseType: 'json',
            onload: function(response) {
                if (response.status === 200) {
                }
            }
        });
    }

    function AddAutoPickUpBox()
    {
        var i=document.getElementById('js_top_panel_box');
        if (i!=null){

            var id=document.createElement('div');
            id.setAttribute('class','pub_switch_box');



            var ia=document.createElement('span');
            ia.innerText='自动提取:';
            ia.setAttribute('class','pp_align');

            //ia.classList.add("button","btn-line", "btn-upload");


            var ip=document.createElement('input');
            ip.setAttribute('type','checkbox');
            ip.setAttribute('id','autopick');
            ip.setAttribute('class','pub_switch');

            var il=document.createElement('label');
            il.setAttribute('for','autopick');

            id.appendChild(ip);
            id.appendChild(il);

            // ia.appendChild(id);

            i.appendChild(ia);
            i.appendChild(id);



        }


    }


    function AddStroeFloder()
    {
        GM_xmlhttpRequest({
            method: "POST",
            url: 'https://webapi.115.com/files/add',
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
            }
            ,
            data: PostData({
                pid:'0',
                cname:StoreFolder
            }),
            responseType: 'json',
            onload: function(response) {
                if (response.status === 200) {
                }
            }
        });
    }


    function Init()
    {
        // AddAutoPickUpBox();
        //FormatCookieString();
        var cid=0;
        var info='';
        GM_xmlhttpRequest({
            method: "GET",
            url: 'https://webapi.115.com/files?aid=1&cid=0&o=user_ptime&asc=0&offset=0&show_dir=1&limit=115&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json',
            responseType: 'json',
            onload: function(response) {
                if (response.status === 200) {
                    info = response.response;

                    //  alert(uploadinfo.user_id+'|'+uploadinfo.userkey);
                    try
                    {
                        info.data.forEach(function (line) {
                            if(line.n==StoreFolder)
                            {
                                window.CID=line.cid;
                            }

                        }

                                         )
                        if(window.CID==0)
                        {
                            AddStroeFloder();
                        }
                    }
                    catch(err)
                    {
                        // alert(err);
                    }

                }
            }
        });


    }

    Init();

    function PostData(dict) {
        var k, tmp, v;
        tmp = [];
        for (k in dict) {
            v = dict[k];
            tmp.push(k + "=" + v);
        }
        return tmp.join('&');
    };

    function UrlData(dict) {
        var k, tmp, v;
        tmp = [];
        for (k in dict) {
            v = dict[k];
            tmp.push((encodeURIComponent(k)) + "=" + (encodeURIComponent(v)));
        }
        return tmp.join('&');
    };

    function GetSig(userid, fileid, target, userkey) {
        var sha1, tmp;
        sha1 = new jsSHA('SHA-1', 'TEXT');
        sha1.update("" + userid + fileid + fileid+target + "0");
        tmp = sha1.getHash('HEX');
        sha1 = new jsSHA('SHA-1', 'TEXT');
        sha1.update("" + userkey + tmp + "000000");
        return sha1.getHash('HEX', {
            outputUpper: true
        });
    }
    async  function test(info,flag)
    {
        window.linkText=""

        if(info[0].indexOf('|')==-1 ){


            GetFilesByCID(info[0]);

            await delay(3000);

            while(window.reqcount!=0)
            {
                await delay(50);

            }


            download(info[1]+"_sha1.txt",window.linkText);

            return;
        }

        GetShareLink(info,flag);
    }

    function DeleteCookie(resp)
    {
         try
                    {

        var reg =/set-cookie: .+;/g;

        var setcookie=reg.exec(resp)[0].split(';');

        var filecookie=setcookie[0].slice(11)+"; expires=Thu, 01 Jan 1970 00:00:00 UTC;"+setcookie[3]+";domain=.115.com";

        document.cookie =filecookie;

        RenewCookie()

        return filecookie;
         }
           catch(err)
                    {

                        return null;

                    }

    }

    function RenewCookie()
    {
        var arryCookie=window.cookie.split(';');

        arryCookie.forEach(function (kv) {

            document.cookie=kv+";expires=Thu, 01 Jan 2100 00:00:00 UTC;;domain=.115.com"

        }

       )

    }


    function GetFilesByCID(cid)
    {
          //  console.log("cid:"+cid);
        GM_xmlhttpRequest({
            method: "GET",
            url: "https://webapi.115.com/files?aid=1&cid="+cid+"&o=user_ptime&asc=0&offset=0&show_dir=1&limit=1150&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json&type=&star=&is_share=&suffix=&custom_order=&fc_mix=",
            responseType: 'json',
            onload: function(response) {
                if (response.status === 200) {
                    var info = response.response;

                    try
                    {
                      //  console.log(info);

                        info.data.forEach(function (line) {



                            if(line.cid!=cid) //folder
                            {

                                GetFilesByCID(line.cid);

                            }
                            else
                            {
                                GetShareLink([line.n+'|'+line.s+'|'+line.sha, line.pc],false);


                            }


                        }

                                         )

                    }
                    catch(err)
                    {

                        GM_xmlhttpRequest({
                            method: "GET",
                            url: "https://aps.115.com/natsort/files.php?aid=1&cid="+cid+"&o=file_name&asc=1&offset=0&show_dir=1&limit=1150&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json&type=&star=&is_share=&suffix=&custom_order=&fc_mix=0",       responseType: 'json',
                            onload: function(response) {
                                if (response.status === 200) {
                                    var info = response.response;



                                    try
                                    {

                                        info.data.forEach(function (line) {


                                            if(line.cid!=cid) //folder
                                            {

                                                GetFilesByCID(line.cid);

                                            }
                                            else
                                            {
                                                GetShareLink([line.n+'|'+line.s+'|'+line.sha, line.pc],false);


                                            }


                                        }

                                                         )

                                    }
                                    catch(err)
                                    {
                                        alert(err);
                                    }

                                }
                            }
                        });


                    }

                }
            }
        });

    }

    function CreateShareLink(url,info,cookie,flag){




        var pre_buff=null;

        if(url!==undefined){

            GM_xmlhttpRequest({
                method: "GET",
                url: url,
                headers: {
                    "Range": "bytes=0-154112",
                    "Cookie": cookie
                },
                responseType: 'arraybuffer',
                onload: function(response,shalink) {
                    if (response.status === 206) {

                        window.reqcount-=1


                        pre_buff = response.response;

                        try
                        {
                            var data= new Uint8Array(pre_buff);
                            var sha1 = new jsSHA('SHA-1', 'ARRAYBUFFER');
                            sha1.update(data.slice(0, 128 * 1024));
                            var preid = sha1.getHash('HEX', {
                                outputUpper: true
                            });
                            console.log(hProtocol+info[0]+'|'+preid);
                            window.linkText+=hProtocol+info[0]+'|'+preid+'\n'
                            if(flag){
                                var link= prompt("复制分享链接到剪贴板",hProtocol+info[0]+'|'+preid);
                            }

                        }
                        catch(err)
                        {
                            alert(err);
                        }
                    } else {
                        window.reqcount-=1

                        return GM_log("response.status = " + response.status);
                    }
                }
            });
        }

    }
function GetShareLink(info,flag)
    {
        




        var download_info=null;
        GM_xmlhttpRequest({
            method: "GET",
            url: 'http://webapi.115.com/files/download?pickcode='+info[1],
               headers: {
                     "cache-control":"  no-cache, no-store, max-age=0, must-revalidate", //'public, no-store, no-cache="Set-Cookie", must-revalidate',
                     "Pragma": "no-cache",
                     "Expires": "0"
                },
            responseType: 'json',
            onload: function(response) {
                if (response.status === 200) {
                    download_info = response.response;

                  //    console.log(download_info);


                    window.reqcount+=1

                    var resp=response.responseHeaders

                   //     console.log(resp);

                   var setcookie= DeleteCookie(resp)
                    var filecookie= null;
                    if(setcookie)
                    {
                       filecookie= setcookie;

                    }



                    try
                    {

                        CreateShareLink(download_info.file_url,info,filecookie,flag);

                    }
                    catch(err)
                    {
                        alert('请先登录115'+err);
                    }
                } else {

                    return GM_log("response.status = " + response.status);
                }
            }
        });

    }
    function  DownLoadFileFromSha1Links(links)
    {
        // console.log(links);
        if (links=="")
        {
            alert("链接不能为空");
            return;
        }
        var uploadinfo=null;
        var cid=0;
        GM_xmlhttpRequest({
            method: "GET",
            url: 'http://proapi.115.com/app/uploadinfo',
            responseType: 'json',
            onload: function(response) {
                if (response.status === 200) {
                    uploadinfo = response.response;
                    document.cookie=window.cookie
                    //  alert(uploadinfo.user_id+'|'+uploadinfo.userkey);
                    try
                    {

                        var lines=links.split(/\r?\n/);
                        lines.forEach(function (line) {


                            if (line.trim()=="")
                            {
                                return;
                            }
                            var nsf=line.split('|');

                            if(nsf[0].substring(0,6)==hProtocol)
                            {
                                nsf[0]=nsf[0].substring(6);
                            }
                            if(nsf[0]!='' && nsf[1]!='' && nsf[2]!=''&& nsf[3]!=''&&nsf[2].length==40&&nsf[3].length==40)
                            {

                                DownFileBySha1JS(uploadinfo.userkey,uploadinfo.user_id,nsf[0],nsf[1],nsf[2],nsf[3]);



                            }

                            else
                            {
                                alert("链接格式错误!");
                            }

                        });



                    }
                    catch(err)
                    {
                        alert('请先登录115'+err);
                    }
                } else {

                    return GM_log("response.status = " + response.status);
                }

            }
        });
    }

    function DownFileBySha1JS(userkey,user_id,filename,filesize,fileid,preid)
    {
        var target='U_1_'+window.CID.toString();
        GM_xmlhttpRequest({
            method: 'POST',
            url: 'http://uplb.115.com/3.0/initupload.php?' + UrlData({
                isp: 0,
                appid: 0,
                appversion: '11.2.0',
                format: 'json',
                sig: GetSig(user_id, fileid, target, userkey),

            }),
            data: PostData({
                preid: preid,
                fileid: fileid,
                quickid:fileid,
                app_ver: '11.2.0',
                filename: filename,
                filesize: filesize,
                exif:'',
                target: target,
                userid:user_id

            }),
            responseType: 'json',
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
            },
            onload: function(response) {
                if (response.status === 200) {

                    if (response.response.status === 2) {
                        return console.log(''+filename+' 转存成功!');
                    } else {
                        return console.log(''+filename+' 转存失败!');
                    }
                } else {
                    return GM_log("response.status = " + response.status);
                }
            }
        });
    }
    function GetSha1LinkByliNode(liNode)
    {
        var type=(liNode.getAttribute("file_type"));
        var filename  = liNode.getAttribute('title');

        if(type=="0")
        {
            var fid  = liNode.getAttribute('cate_id');
            return [fid,filename];
        }
        else
        {

            var filesize =liNode.getAttribute('file_size');
            var sha1 =liNode.getAttribute('sha1');
            var pickcode=liNode.getAttribute('pick_code');
            return [filename+'|'+filesize+'|'+sha1, pickcode];
        }
    }
    function AddDownloadSha1Btn(jNode)
    {   if (document.getElementById('downsha1')==null){
        var id=document.createElement('div');
        id.setAttribute('class','con');
        id.setAttribute('id','downsha1');
        var ia=document.createElement('a');
        ia.setAttribute('class','button');
        ia.setAttribute('href','javascript:;');
        var inode=document.createTextNode("转存");
        ia.appendChild(inode);
        id.appendChild(ia);
        jNode[0].appendChild(id);
        id.addEventListener('click', function (e) {
            var links= document.getElementById('js_offline_new_add').value
            DownLoadFileFromSha1Links(links);

            (document.getElementsByClassName('close')[2].click());


        })
    }

    }


    function AddShareSHA1Btn(jNode)
    {
        var parentNode=jNode[0].parentNode;
        var sha1Link=GetSha1LinkByliNode(parentNode);
        var aclass=document.createElement('a');


        //    var AutoPickup=document.getElementById('autopick').checked;
        //  if(AutoPickup){
        //    GetShareLink(sha1Link,false);
        //  }
        aclass.addEventListener('click', function (e) {

            test(sha1Link,true);

        })


        var iclass=document.createElement('i');

        var ispan=document.createElement('span');

        var node=document.createTextNode("分享SHA1");

        ispan.appendChild(node);

        aclass.appendChild(iclass);
        aclass.appendChild(ispan);
        jNode[0].appendChild(aclass);

    }

})();

none.gif

9099816a

秒传不都是会员吗