11// ==UserScript==
22// @name 115转存助手ui优化版
33// @name :zh 115转存助手ui优化版
4- // @description 2022.04.02 更新,115转存助手ui优化版 v3.5 (143.2022.0402 .1)(based on Fake115Upload 1.4.3 @T3rry)
4+ // @description 2022.06.16 更新,115转存助手ui优化版 v3.6 (143.2022.0616 .1)(based on Fake115Upload 1.4.3 @T3rry)
55// @author Never4Ever
66// @namespace Fake115Upload@Never 4Ever
7- // @version 143.2022.0402 .1
7+ // @version 143.2022.0616 .1
88// @match https://115.com/*
99// @exclude https://115.com/s/*
1010
3131
3232/*********************************************
3333请从以下获取最新版,或者遇到问题去此反馈,感谢
34- https://gist. github.com/Nerver4Ever/953447c9ecd330ffc0861d4cbb839369
34+ https://github.com/Nerver4Ever/SevenSha1UIAdvancedHelper
3535**********************************************/
3636
3737/*针对网络问题,只能将不稳定的依赖库放置于此*/
@@ -729,19 +729,6 @@ https://gist.github.com/Nerver4Ever/953447c9ecd330ffc0861d4cbb839369
729729} ) ( this ) ;
730730
731731
732- /*GM_config_zh-CN.js*/
733-
734- // ==UserScript==
735- // @name GM_config_zh-CN
736- // @author Mike Medley & zxf10608
737- // @version 1.3.7
738- // @description GM_config_中文版
739- // @grant GM_getValue
740- // @grant GM_setValue
741- // @grant GM_deleteValue
742- // @exclude *
743- // @license LGPL 3
744- // ==/UserScript==
745732
746733/*
747734优化说明
@@ -1797,16 +1784,16 @@ function waitForKeyElements(
17971784
17981785 //版本信息
17991786 const TIPS = {
1800- CurrentVersion : "143.2022.0402 .1" ,
1801- LastUpdateDate : "2022.04.02 " ,
1802- VersionTips : "115转存助手ui优化版 v3.5 " ,
1803- UpdateUrl : "https://gist. github.com/Nerver4Ever/953447c9ecd330ffc0861d4cbb839369 " ,
1787+ CurrentVersion : "143.2022.0616 .1" ,
1788+ LastUpdateDate : "2022.06.16 " ,
1789+ VersionTips : "115转存助手ui优化版 v3.6 " ,
1790+ UpdateUrl : "https://github.com/Nerver4Ever/SevenSha1UIAdvancedHelper " ,
18041791 Sha1FileInputDetails : "" ,
18051792 } ;
18061793
18071794 const WORKSETTINGS = {
1808- WorkingItemsNumber : 4 , //同时执行任务数
1809- SleepLittleTime : 500 , //短暂休眠,毫秒,暂时在转存中使用
1795+ WorkingItemsNumber : 3 , //同时执行任务数
1796+ SleepLittleTime : 1000 , //短暂休眠,毫秒,暂时在转存中使用
18101797 SleepMoreTime : 1000 , //长时休眠,毫秒,暂时在提取中使用
18111798 SleepMuchMoreTime : 8000 , //超长休眠,暂时未使用
18121799 ANumber : 27 , //随机数,暂时未使用
@@ -1995,40 +1982,40 @@ function waitForKeyElements(
19951982 default : true ,
19961983 } ,
19971984 separator : {
1998- label : '分隔符方案(推荐生僻字 ;如果分隔符失效,请自行修改):' ,
1985+ label : '分隔符方案(使用生僻字,勿用标点 ;如果分隔符失效,请自行修改):' ,
19991986 type : 'text' ,
2000- default : '變 '
1987+ default : '蠔 '
20011988 } ,
20021989 uploadNumber : {
20031990 //section: ['时间参数设置', '注意:参数设置过快,会引起115服务器无响应,为稳定运行参数未启用!'],
20041991 //label: '转存同时工作任务数:',
20051992 labelPos : 'left' ,
20061993 type : 'hidden' ,
2007- default : '4 ' ,
1994+ default : '3 ' ,
20081995 } ,
20091996 uploadSleepTime : {
20101997 //label: '转存间隔时间(毫秒):',
20111998 labelPos : 'left' ,
20121999 type : 'hidden' ,
2013- default : '500 ' ,
2000+ default : '1000 ' ,
20142001 } ,
20152002 downloadNumber : {
20162003 //label: '提取同时工作任务数:',
20172004 labelPos : 'left' ,
20182005 type : 'hidden' ,
2019- default : '4 ' ,
2006+ default : '3 ' ,
20202007 } ,
20212008 downloadSleepTime : {
20222009 //label: '提取间隔时间(毫秒):',
20232010 labelPos : 'left' ,
20242011 type : 'hidden' ,
2025- default : '1300 ' ,
2012+ default : '2000 ' ,
20262013 } ,
20272014 createFolderSleepTime : {
20282015 //label: '目录创建间隔时间(毫秒):',
20292016 labelPos : 'left' ,
20302017 type : 'hidden' ,
2031- default : '300 ' ,
2018+ default : '600 ' ,
20322019 } ,
20332020 checkUpdate : {
20342021 //section: ['帮助&更新&反馈', '常见错误以及对本脚本进行更新检查与bug反馈'],
@@ -3312,6 +3299,7 @@ function waitForKeyElements(
33123299 }
33133300 item . extension = "" ;
33143301 item . formatedName = "" ;
3302+ item . formatedExtension = ""
33153303 succeed = true ;
33163304 }
33173305 }
@@ -3324,6 +3312,8 @@ function waitForKeyElements(
33243312
33253313
33263314 function createUploadFile ( urlData , postData ) {
3315+ console . log ( "createUploadFile" ) ;
3316+ console . log ( urlData )
33273317 return new Promise ( ( resolve , reject ) => {
33283318 GM_xmlhttpRequest ( {
33293319 method : 'POST' ,
@@ -3364,7 +3354,6 @@ function waitForKeyElements(
33643354
33653355 let fCid = `U_1_${ targetFolder } ` ;
33663356 let appVersion = "25.2.0" ;
3367-
33683357 let urlData = UrlData ( {
33693358 isp : 0 ,
33703359 appid : 0 ,
@@ -3373,7 +3362,8 @@ function waitForKeyElements(
33733362 sig : GetSig ( uploadInfo . user_id , fileItem . sha1 , fCid , uploadInfo . userkey )
33743363 } ) ;
33753364
3376-
3365+ console . log ( "postData" )
3366+ console . log ( "fileItem.formatedName" )
33773367 let postData = PostData ( {
33783368 preid : fileItem . preid ,
33793369 fileid : fileItem . sha1 ,
@@ -3387,6 +3377,8 @@ function waitForKeyElements(
33873377
33883378 } ) ;
33893379
3380+ console . log ( postData )
3381+
33903382 const r = createUploadFile ( urlData , postData ) ;
33913383
33923384 const x = r . then ( t => {
@@ -3513,6 +3505,9 @@ function waitForKeyElements(
35133505
35143506 }
35153507
3508+ function reverseString ( str ) {
3509+ return str . split ( "" ) . reverse ( ) . join ( "" ) ;
3510+ }
35163511 //解析inline text sha1 links,并根据配置设置分隔符;返回FileArray
35173512 function parseSha1LinksToFileArray ( text , nameSeparator , errorCallback ) {
35183513 let textLines = text . split ( / \r ? \n / ) ;
@@ -3523,14 +3518,16 @@ function waitForKeyElements(
35233518 if ( ! fLine ) continue ;
35243519 let r = convertFromSha1Link ( fLine ) ;
35253520 if ( r . state ) {
3526- let nameStrings = r . fileItem . name . split ( "." ) ;
3527- let extension = nameStrings . pop ( ) ;
3528- r . fileItem . extension = extension ;
3521+ //let nameStrings = r.fileItem.name.split(".");
3522+ //let extension = nameStrings.pop();
3523+ //r.fileItem.extension = extension;
3524+ //let formatedExtension=reverseString(extension);
35293525 //根据配置重新设置文件名
35303526 if ( nameSeparator ) {
35313527 //使用emoutils.js库来分割,带有emoji的文件名
3532- let fileName = emojiUtils . toArray ( nameStrings . join ( '.' ) ) . map ( c => c + nameSeparator ) . join ( "" ) . slice ( 0 , - 1 ) ;
3533- r . fileItem . formatedName = fileName + "." + extension ;
3528+ //let fileName = emojiUtils.toArray(nameStrings.join('.')).map(c => c + nameSeparator).join("").slice(0, -1);
3529+ //r.fileItem.formatedName = fileName + "." + formatedExtension;
3530+ r . fileItem . formatedName = emojiUtils . toArray ( r . fileItem . name ) . map ( c => c + nameSeparator ) . join ( "" ) . slice ( 0 , - 1 ) ;
35343531 } else {
35353532 r . fileItem . formatedName = r . fileItem . name ;
35363533 }
@@ -3619,6 +3616,7 @@ function waitForKeyElements(
36193616 let completed = fileLength - fileArray . length ;
36203617 let promisArray = new Array ( ) ;
36213618 let uploadInfo = await getUploadInfo ( ) ;
3619+ console . log ( "uploadInfo" )
36223620 let msg ;
36233621 for ( let file of fileArray ) {
36243622 if ( getTaskCancelFlag ( ) ) {
@@ -3706,9 +3704,15 @@ function waitForKeyElements(
37063704 }
37073705
37083706 let selectedFiles = files . filter ( f => f . formatedName . search ( separator ) != - 1 && f . id ) . map ( f => {
3707+ //let lastIndex=f.formatedName.lastIndexOf(".");
3708+ //let name=f.formatedName.substring(0,lastIndex);
3709+ //let ext=f.formatedName.substring(lastIndex+1);
3710+
37093711 let fo = {
37103712 id : f . id ,
3711- name : f . formatedName . split ( separator ) . join ( "" )
3713+ //fix
3714+ //name: name.split(separator).join("")+"."+reverseString(ext)
3715+ name : f . formatedName . split ( separator ) . join ( "" )
37123716 } ;
37133717 return fo ;
37143718 } ) ;
@@ -3761,9 +3765,14 @@ function waitForKeyElements(
37613765
37623766
37633767 let selectedFiles = onlineFiles . filter ( f => f . name . search ( separator ) != - 1 ) . map ( f => {
3768+ //let lastIndex=f.name.lastIndexOf(".");
3769+ //let name=f.name.substring(0,lastIndex);
3770+ //let ext=f.name.substring(lastIndex+1);
3771+
37643772 let fo = {
37653773 id : f . id ,
3766- name : f . name . split ( separator ) . join ( "" )
3774+ //name: name.split(separator).join("")+"."+reverseString(ext)
3775+ name :f . name . split ( separator ) . join ( "" )
37673776 } ;
37683777 return fo ;
37693778 } ) ;
0 commit comments