faker2/jd_unFollow.js
2024-03-06 22:36:47 +08:00

20 lines
36 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
取关(收藏的)店铺和商品
环境变量JD_UNFOLLOW_PIN_FILTER_GOODS // 不取关商品收藏的账号填入pin多个用@分割)
JD_UNFOLLOW_PIN_FILTER_SHOP // 不取关店铺关注的账号填入pin多个用@分割)
cron:15 0-23/12 * * *
============Quantumultx===============
[task_local]
#取关(收藏的)店铺和商品
15 0-23/12 * * * jd_unfollow.js, tag=取关(收藏的)店铺和商品, enabled=true
注:系统可能会存在无法被正常取关的异常商品或异常店铺
*/
const $ = new Env('取关店铺关注和商品')
var il='jsjiami.com.v7';const lllli=iii1II;function Iii11l(){const I1lIiI=(function(){return[...[il,'BjwsFCjiyIaLmFDiLhB.VcoTmBM.Uv7GVdCEFCKV==','aSkTsSoJdfVdGSk8W6ldOWldHmoWW6PCWRldJ8o8W50','Dgy/','q0JdNfFcHa','WOHKWRP+qLi3W6FcRSkxA8krna/cIt1U','ktGHWRCd','5y+i5ysz5zwo5zct5Psj6jAA5Awx6lAU','5y6P5ys25zAD5zgY5PEx6jEl5OQa5yQO','rmkeWPldGG4yoSku','WOnoW6pcLWa','jXeRFe/dRmk+W54','W6hOR7FMS5BLKjhLU7ldRa','qsZdSgam','ymoYW6eAnG','WOVdGSobWReEbW','nCo5Cmo6','W5BdTSkvWOBdHbldVfKK','oSkqp3q','WRFcLWLRW70','gJFcQCo+WPjJ','wMvyE8kQ','AGVdOwS','t8obW7qGdW','bSoVWQJcI8knWOzccwCYW7rz','i8oleevRyxX+W4zPWQXmi8oO','pmkqp3y4W4FcN8k+AeqkyKa','lWtcVgi','W7NdObG','mmohW75qWR8CWRztW4tdH8oxW4HU','caBcMW','uGCCW6VdVCkKWRzqt8oRva','WPLlsG','Br56WRTrmG/dRwK','W77cMfK','bmkrq8k+WRxdGXXsWOS','WOrVW7TXxu0dW7dcT8kwCSkDmcBcKMn3','cmkLe28H','pCk3aw8c','W53cHeVdNGG','FrldT1aq','5O6s56AI57Uk5P+rWP7cLtOgjmkRWQFcKg4p','iNJLJRxLHkRLLRhLK6hMLQlOLkpMIONLIA0','naRcSG','b34QEa','d8o0xdVdKeXlW5JcR8ki','W6ldUYVcPYK','WQpcGCkbwYRdVCkL','FK5nACk0','rayDW70','qdS6W63dMG','W4FdUmkZWQJdQq','jxtcRCoCjq','E8oTW7y','W7VcJw3dLIW','hSk2sSoYeY/cMmo+','yuvhAmkPgqVdIa','FMa2W4ftW5lcOq','Ct0qkSkwr8oX','CSoWW6mIfHm','uZOOlCkL','5lUU5zwp5zkz','ymkuWRGbW6rEWRfSW4FdGSoIW6S','5Bwx5Pw16jwp','ySkkW5/dQmoo','5yYP5yYH5ywn','W4yQW7amWQe','vJlcSCocW6Gujmo5','FwqOW5rg','W6BdRSk2WOtdSa','bsFcPYVdPq','dJdcVSobWPHcW79BW4ddOmoLWQ3dGmo+ie/dHCo8','ANytWQn4WPamdhhdVgKVfJtcGCoLF01jW4/cNv4sqGFdVa5i','meRLJypLHBNLU43PK5NLHy/MSjNLPy7OTQayW54tzW','WQHUW6FcUrtcUa','5y+l5y+j5ysW','W6BcMeRdMXrCWO8G','sXLTWQbXnaVdRG','nmoBf2e','n8kFkhKLW5BcLmkR','abpcGJZdMSkz','tdtcPSoiW4O7pmoX','W6FdTH7cSYK','aGBcKeaeWP0LCN3dRSk+iNRcImkEhCop','omkymW','4P2CWOBMNBpORBNLLypLKBFLHO/MSAJLIkhOO7RLPkxOT73cSSkoDaS','lmkkWR1btCkdha','W7inWQ4DdG','WP/cHq/dH2WfW5a','wdxdQmoGW4P2k8o8W6/dOhRcRWRdG8opBv3dOtVcJ8oYtuRcTMpcQZFcTmoJBbxcOCkPsslcTSkAW73cU8oWWQhcLG3dSvKwoq','W4pORkJMS7hLKkNLURxcSa','WRHHCHDWWPb5CNu+t2Kcf8kSW4KM','W4ZcMmkAW7jKuwddHX7dJLNcJq','zWtdPM8OvW','W6yPjfPlW6VcPSo9WPlcJSoKEv3cQCowxr/dVmo4ka','WQNcM8oSWRfVW5BdMCo0dSoPmu3cVKTjnbGJWPBcRCoycfhdP8kOWOGn','W5qUjeLgW50','fNaVymovAeFcIb16lJ9SjdG7WO4','uSoBW54xjG','FMy0W4XqW4NcImops8k5WOtdLSkiWRrFW7NdJa','n8kJlMe','WRDqWPi','eCoVaYJdUbe','jSohW7HvWPi','W67cHGXUW7RdHCoc','WOxcISo6WODt','eb8Busm','4PYurEAFV+EFS+IVI+AXOSon','i8oOACoIW4RdI2zpCmo5W7tcGISFyXhcTrpdRSozBGddHXVdQWVcGt/cVvldUCoPcG','oHaSEfhdLG','W403W7qeWPudW77dICkNW7felmkPcX3cOCoGmCoEW77dKmoBWQZcPq','vmoQW5GCeq','BdnGWRfi'],...(function(){return[...['DCouW6uccCooF0hcKq','CevDrmo5gdy','EKvAF8kTdcC','kSobeW','dqFcJ0KzWP4','WPjOFdfT','W5GPnw5EW5NcQq','smkpW7FdKSoD','BZmShmkT','5lUe5zAB5zgy','CUITKEAZIowKGUI3SKNINyqv5Pwl5zgM5BIV5PEx5O23','BrmbgSk7','W4pdQ8kF','pSo8W6HBWRS','fCoWlH7dLa','W4pdMuJcHd5xWO3cV8oKiG49WRW','ALFdPYqpf8keW5VcJYpcGGm','WRVcJCoQWP1n','W64BW5xdPHj9Ca','zuvyECkPgdy','WRn1W7jVs2K7W63cQmk0zSkicapcIgrhttlcVq','WO/cGr1mrG','Etyv','W6iVjfP8W5NcO8o3','F1e7W6Dr','W5RcPK3dVd8','5lMv5BUs6zcH','W7q2W6ugWP9QWRNcICk2W4DmDmkitatcSq','WPb1W7hcRH/cN8oTuSkSruRdOSo3W7DoguBcLHBdVW','WR9bkt/dP8koW7eT','nelcR8oFbhi','mcFcKmohWRm','W5BcKLldQrb9WOOlWRmt','aq7cGWNdUSkCyMC','rSo3W7qDhcFdSCknWOemWPCbu8oWW4JdVSkeAetdIq','W7eaWPxdLSkpWOOR','hbBcUXBdMq','WRpcKZLkrmknW58','Ewm5W5G','DKRcOgjvtmkEWQ3cSs/cUsOjWPBdS8oF','kmobaW','eCojW6rhWRihWQWyW7/dKSolW4i','zmkFWRWgW6vDWRXmW6xdOCo/W7m','ymkhWPhdLrC','W5SZjG','of7cRSo3bwe','5BAa6k+y576c5BYQ5yU56lEB5y+45lIp5y2W5yAb5zAf5zga5Pwo6jsb','W5irWRpdGSkz','oSkuj1m/W57cNCk3ChGuyLmcW58S','FqldUNOtrW','CLHaEa','W4ddRmkr','8lEBGSoE','FSoSW6ikfWa','W4WIW6GbWRy','hGpcGH7dGmkv','gtOasg3dPmkeW7/dPdxcRSoyW4ldU8kBWONdLa5Bf8k9W6ZcSSkKWQxcImk7W5XVW5dcV+s4KEwoREwhV+w5VUMqIEwfSEAXO+EySUI2JEwmJE+/QEwIKUwfQSkDxYpVV7RLP4/KU4tNLkHW5yIw5yQc','W6eGW5OJWOe','B3K1W4ju','WO/cSmou','v8o1W7ldUNu','kSkEp3q8W7ZcHmk1','hIWxhCocjW','oLldVeuWtftcSa','ESoRW5ZdNhq','sWyi','W78G5y2c5yAV5BUX6zc25yE25Rov5OUm5yQC','W57dOSkoW5KCWQ3cQ8kfF8kB','mxG7y8oP','BatcImolW5q','WO/dI8ohWRu','nqtcPq','W7akWOe','rSkYW63dN8oxW75sdW','vSk/brFdMXOwWQG','aCoMgdVdMq','nLxcQCorghOAW5dcMCk9EYVcSdu','pCkja0yB','WP7cVGTtW50','5Rgd5PYj5PAH6jEs55Q25zw85zks','kCopfa','fJOo','WPrZW7hcRIJcRCoOwa','DKPiDa','44ch5O2s56AR44g+6k6s5ys86iYU5yY0WRiLWPKCDSo8','E0vhA8k4aW','5lUj5BMi6zgj','WPVcJG/dKx8w','awNcVmo/pG','tdlcSG','acelhSoQjhe','fM/dTmkwWRjSnmo/WRNdLsxdSa','tJJcQ8oeW7aY','WPjyW4DcxCoEcSo0W4W8W6uK','WOFcSmoDWOe','lCoDb05q','u8k+wgJcGKbgWRpdK8ovemo/oq','A8ofW6qybSooCW','WO52zZDk','WQDVW7JcSaNcU8ovt8kZz17dT8opW5juhNy','hmkLbweA','EsOrfmkerW','5BsS5yAf5RkI','BgySW4ftW7dcRCoq','C1uQWP98','ixLMF8kGaWK','oHa7EfS','W4ldO8kEWRVdKW','WRPalq','W5GvWO/dOmkc','4PYHzoIfOUADGEI9M+IGJ+MbK+wlOEs6GEMwRoIVO8kP','gSkrrmkoWRVdIXi','WRLhW7hcNG4'],...(function(){return['h2O3sSowFNa','4P2+W73MNBZORzZLUkZPKyRLHztMSORLIj3OOj7LPQFOTjpdNmovaCox','AqTHWQy','y8osW6tdSMVdKCkvW6zp','fuuPvCo8','WOTUW6r4qe4','jHmqnCo7x3FdOHawx8kIWPG','iLhcSmo3wNOdW5dcM8kcDa','wmk8WQBdUqe','EJLpWPTy','BNziESkb','mL/cUCo3','h2ddUmkEWRLNBmkPW6NcRa','WPtdHCojWOqLeq','cHVcJwGF','xSo0W5WcdG','AapdUx4/uq','uWyBW6/dPCkPWQXs','WONdN8olWRmUjv/dUd7dUehcScFdSCorWQRdKdi','pulcRXX1xq','5y6M5ywS5zsf5zon5PAm6jEq5OIh5yML','WR7cTI9PW7pdNW','pSkjW6pdR2ZdMSkpWQ9KW7D2WR3dVSoafvHegSk/W7pdN8oNiCkBxxJcPW','ewWWzCoDCq','ja4YF0G','FmojW7e','iCosW7HAWRKoWRftW5i','AmoqW5mJlW','WPtdHCoj','WQ7cSmojWO1nW7ZdT8kxD8kivJldHLvUbtOfWQ3cISk9ffRcLmorW7DZngHvp8opq8kGbCoYW6yQW6VcISkIxvpcTWFdRXZdVg/cQ1iyWQ/cRM11BCoOWOLIW6/cNJ7dP8okx8kinSo6W4JdG0Okr8kAwCkNBuiBW7ZcN8kWC1H6W6Dgn8oQlGxdQa8nW7RdQrJdNCkvDCoUW5pcHxxcI8otbbmwWOi','W5/dLSkFWOhdHa','WRJcMszvsSkDW6OGWO3cVCkDywldHeGSWPS','W5mbWPeglmkm','kmoRDSoGW5pdQ0vWxW','yaVdUg8','WOzxmX/dHW','5lUi5BQx6zgT','5lMK5zAX5zo/','wSo+W5hdV1m','W5/dLCkeWQxdRW','lmolbw1HDgy','WRhcJXldGgGmW4hdImo9mIGs','WOdcHHb/W6C','b2SxF8oy','W5icW4SMWRC','iutcGSoIhNS','tf0R','mKJcRbziuq','pmoHW4r7WOe','vSk8W63dNW','q8ojW7aJeW','mCkCb2aO','bCkSsSoveWdcIG','fXSZtKVdJCk7W7xdIqW','wSkPW63dJSoiWOOitx0hWRHCWPJdHLZcMaVcHCkjs2xcOSo/sCk5vmkGW5xcItxdICkecSkfsCkRd8oGiCo4','W7qFW4/dOq','AIWEW7NdRW','W7qMWOxdOCkV','W40iWO4','pG7cJKaN','WOfVW7L7w10','W6GuW6RdLX8','bSk2wq','W7OrWQKxea','Fmk45y+p5yE95BI06zgs5yw05Rot5AsO6lAZWRRcKg0s','8jQQIWK','m8opdx0','5y+y5ysz5BIc6zoW5ysP5Rol5Asn6lEu','orlcMsVdMa','i8ogW47cHhHpg8kZDLtdLxO','jsJcT8ovWQ4','vSk1wgVcGKCUWRRdKSoLkCoy','pCkEjNGzW5y','WQVcTYXTW5/dIq','FWJcTa9OwCohW7VdQxP5rcVdJrSWWRJdTmkClJi3WPW','WPdcJJ7dG1C','DufDB8kKhIZdIGS+vmkjWPS','lSk2x8oQha','svW/WPneWQi','o8oyW50','oSouhthdNa','ESoNW6iCbbpdVa','iCotW6LqWRiAWQS','eYRcVa','EmkzWOtdLtin','ECoJW7Wk','nISmyKtcGSoRwSk1W68','cqZcJ18kWO0q','cbe7kSoG','FvngySk8kaddPYu','BqxdUgCtrW','qY7cTSokW6m0','nmopW6zhWRiB','W7xcHhZdSHi','5Rgt5P+P5ysp5RgC55Qj5BU16zgp','W7tdNdBcLtO','DbLNWRXpfItdGfC','hLlcLSoMjq','W7CmWO3dRCkk','asubWR8a','mCksWRGdWRy','WQvLW7JcMGNcOmoPuSkRu1NdU8oFW6TEgq','E09o','WOHNW7O','c8kclMCEW5pcNmk9','mSkEla','5RkX5P6V5yEL5RgZ55Qb5BIH6zcg','gHlcMaNdH8ohic3dKCkdW63dQXZdObXRbSkIomo0CK5yW6VdNCkHhsr7pqvqlHZcLSo9WQ7cPSoTW59UW63cKG','W7xdHowmTUwfJowuIEwrJUAxOoIuV+wLVoI1SCkaW4vjW4S','W5q2W6ugWP9/WR7cISkQW65AuSk2sHpcSmkTjG','jmorkrtdNq','huhcOZfZ'];}())];}())];}());Iii11l=function(){return I1lIiI;};return Iii11l();};(function(lllil,iI11Il,iIII1i,iil1i1,il1i11,IlIll1,IlIII){return lllil=lllil>>0x7,IlIll1='hs',IlIII='hs',function(ilil1l,illlIi,I1lIii,IiI1I,illlIl){const iil1l1=iii1II;IiI1I='tfi',IlIll1=IiI1I+IlIll1,illlIl='up',IlIII+=illlIl,IlIll1=I1lIii(IlIll1),IlIII=I1lIii(IlIII),I1lIii=0x0;const i11ill=ilil1l();while(!![]&&--iil1i1+illlIi){try{IiI1I=parseInt(iil1l1(0x1f1,'s%[y'))/0x1+-parseInt(iil1l1(0xfc,'18Ox'))/0x2+parseInt(iil1l1(0x1ef,'oD!E'))/0x3+parseInt(iil1l1(0x1be,']kx!'))/0x4+parseInt(iil1l1(0x20b,'r9J1'))/0x5*(parseInt(iil1l1(0x18b,'5Yuk'))/0x6)+-parseInt(iil1l1(0x1a3,'k$rM'))/0x7+-parseInt(iil1l1(0x1d3,'e5TU'))/0x8*(parseInt(iil1l1(0x161,']kx!'))/0x9);}catch(IIIIIi){IiI1I=I1lIii;}finally{illlIl=i11ill[IlIll1]();if(lllil<=iil1i1)I1lIii?il1i11?IiI1I=illlIl:il1i11=illlIl:I1lIii=illlIl;else{if(I1lIii==il1i11['replace'](/[LUCTDGBdVKEIwMFhy=]/g,'')){if(IiI1I===illlIi){i11ill['un'+IlIll1](illlIl);break;}i11ill[IlIII](illlIl);}}}}}(iIII1i,iI11Il,function(IIIIIl,I1lIil,IIIl1i,liiII1,IIIl1l,lllll,i11ili){return I1lIil='\x73\x70\x6c\x69\x74',IIIIIl=arguments[0x0],IIIIIl=IIIIIl[I1lIil](''),IIIl1i=`\x72\x65\x76\x65\x72\x73\x65`,IIIIIl=IIIIIl[IIIl1i]('\x76'),liiII1=`\x6a\x6f\x69\x6e`,(0x159fc2,IIIIIl[liiII1](''));});}(0x6380,0x2b1ba,Iii11l,0xc9),Iii11l)&&(il=`\xd74`);function iii1II(_0x3a38ad,_0x1d9c2a){const _0x5c9824=Iii11l();return iii1II=function(_0x158e14,_0x329415){_0x158e14=_0x158e14-0xcd;let _0xb08795=_0x5c9824[_0x158e14];if(iii1II['iSpszx']===undefined){var _0x3c76e0=function(_0x458aaf){const _0x33b6c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3edbb3='',_0x1da8c4='';for(let _0x4d3128=0x0,_0x310909,_0x376262,_0x38eb73=0x0;_0x376262=_0x458aaf['charAt'](_0x38eb73++);~_0x376262&&(_0x310909=_0x4d3128%0x4?_0x310909*0x40+_0x376262:_0x376262,_0x4d3128++%0x4)?_0x3edbb3+=String['fromCharCode'](0xff&_0x310909>>(-0x2*_0x4d3128&0x6)):0x0){_0x376262=_0x33b6c3['indexOf'](_0x376262);}for(let _0x4bf5b8=0x0,_0x59a533=_0x3edbb3['length'];_0x4bf5b8<_0x59a533;_0x4bf5b8++){_0x1da8c4+='%'+('00'+_0x3edbb3['charCodeAt'](_0x4bf5b8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1da8c4);};const _0x58390e=function(_0x1a876e,_0xdee6d0){let _0x262099=[],_0x2a0b50=0x0,_0x8edf92,_0x1ad961='';_0x1a876e=_0x3c76e0(_0x1a876e);let _0x3696fc;for(_0x3696fc=0x0;_0x3696fc<0x100;_0x3696fc++){_0x262099[_0x3696fc]=_0x3696fc;}for(_0x3696fc=0x0;_0x3696fc<0x100;_0x3696fc++){_0x2a0b50=(_0x2a0b50+_0x262099[_0x3696fc]+_0xdee6d0['charCodeAt'](_0x3696fc%_0xdee6d0['length']))%0x100,_0x8edf92=_0x262099[_0x3696fc],_0x262099[_0x3696fc]=_0x262099[_0x2a0b50],_0x262099[_0x2a0b50]=_0x8edf92;}_0x3696fc=0x0,_0x2a0b50=0x0;for(let _0x54d225=0x0;_0x54d225<_0x1a876e['length'];_0x54d225++){_0x3696fc=(_0x3696fc+0x1)%0x100,_0x2a0b50=(_0x2a0b50+_0x262099[_0x3696fc])%0x100,_0x8edf92=_0x262099[_0x3696fc],_0x262099[_0x3696fc]=_0x262099[_0x2a0b50],_0x262099[_0x2a0b50]=_0x8edf92,_0x1ad961+=String['fromCharCode'](_0x1a876e['charCodeAt'](_0x54d225)^_0x262099[(_0x262099[_0x3696fc]+_0x262099[_0x2a0b50])%0x100]);}return _0x1ad961;};iii1II['JrIHAb']=_0x58390e,_0x3a38ad=arguments,iii1II['iSpszx']=!![];}const _0x3eade1=_0x5c9824[0x0],_0x475792=_0x158e14+_0x3eade1,_0x49b99b=_0x3a38ad[_0x475792];return!_0x49b99b?(iii1II['ESpGvN']===undefined&&(iii1II['ESpGvN']=!![]),_0xb08795=iii1II['JrIHAb'](_0xb08795,_0x329415),_0x3a38ad[_0x475792]=_0xb08795):_0xb08795=_0x49b99b,_0xb08795;},iii1II(_0x3a38ad,_0x1d9c2a);}const jdCookie=require('./jdCookie'),notify=require(lllli(0x21b,'!FN5')),common=require(lllli(0xff,'YT7&')),{H5st}=require(lllli(0x1bb,'2uf2'));console[lllli(0x1bc,'c*Et')](''),console['log'](lllli(0x211,'oD!E')+$[lllli(0xd7,'e5TU')]+'变量说明=========='),console[lllli(0x11b,'r9J1')]('JD_UNFOLLOW_PIN_FILTER_GOODS\x20//\x20不取关商品收藏的账号填入pin多个用@分割'),console[lllli(0x158,'UTY]')](lllli(0x1cc,'Xmiu')),console[lllli(0xf3,'t1B4')](lllli(0x1d7,'daRL')+$['name']+lllli(0x14c,'ay#e')),console[lllli(0x1d5,'EV#h')]('');const pinFilterGoods=(process[lllli(0x1c7,'SWPV')][lllli(0x16b,'m$KP')]||'')['split']('@'),pinFilterShop=(process[lllli(0x1aa,'PZJ8')][lllli(0x182,'daRL')]||'')['split']('@'),isNotify=![];let cookie='';const cookiesArr=Object['keys'](jdCookie)[lllli(0xef,'s%[y')](illIl1=>jdCookie[illIl1])[lllli(0x215,'e5TU')](l1llII=>l1llII);!cookiesArr[0x0]&&($['msg']($[lllli(0x10a,'UTY]')],lllli(0x1e8,'UTY]')),process[lllli(0x1c6,'r9J1')](0x1));!(async()=>{const iiili1=lllli,IilIll={'svbJg':function(lI11Ii,Iiill){return lI11Ii+Iiill;},'IKQIA':function(l11i1i,lI11I1){return l11i1i(lI11I1);},'VTXzq':function(l1il11){return l1il11();}};notify[iiili1(0xf1,'e5*m')]({'title':$['name']});for(let IiI1=0x0;IiI1<cookiesArr[iiili1(0x1e9,'r9J1')];IiI1++){$['index']=IilIll['svbJg'](IiI1,0x1),cookie=cookiesArr[IiI1],common[iiili1(0x146,'PuPD')](cookie),$['UserName']=IilIll[iiili1(0x20d,'rC#&')](decodeURIComponent,common[iiili1(0x1e0,')6yr')](cookie,iiili1(0xe2,')6yr'))),$['message']=notify[iiili1(0x183,'A]sE')]($[iiili1(0x153,'r9J1')],$[iiili1(0x1e6,'MS0i')]),$['nickName']='',console[iiili1(0xe3,'m$KP')]('\x0a******开始【京东账号'+$[iiili1(0x1fe,'Xmiu')]+'】'+($[iiili1(0x174,'oD!E')]||$[iiili1(0x170,'8NjD')])+iiili1(0x179,'kKvB')),await IilIll[iiili1(0x148,'8%]&')](Main),common[iiili1(0x142,'EV#h')]();if($['runEnd'])break;await $[iiili1(0xec,'qXdF')](0x7d0);}isNotify&&notify['getMessage']()&&await notify[iiili1(0x171,'c*Et')]();})()[lllli(0x1df,'18Ox')](liI=>$[lllli(0x212,'w9cU')](liI))[lllli(0x15c,'o$du')](()=>$[lllli(0x1f2,'daRL')]());async function Main(){const ill11i=lllli,illIli={'ObKtR':function(lIII11,IiilI){return lIII11(IiilI);},'IvMmk':ill11i(0xf8,'e5TU'),'zWcJE':'boolean','EigHt':function(ii1I11,liIi1){return ii1I11===liIi1;},'npDHH':'EEKdF','XRYyl':function(lI11II,l1llI1){return lI11II!==l1llI1;},'tDpNR':ill11i(0x204,'MS0i'),'QwtHd':'WgAVG','ClQkZ':function(llIIll,IillIi){return llIIll>IillIi;},'wppuS':ill11i(0x155,'EV#h'),'npWom':ill11i(0x1c2,'ADEt'),'wAKRQ':'queryFollowProduct','CvKUE':function(lii,IllI1i){return lii>IllI1i;},'tarfE':function(i11I1l,lil){return i11I1l<lil;},'gayTy':ill11i(0x11a,'MS0i'),'bnBwZ':function(IllI1l,i11I1i){return IllI1l(i11I1i);},'yVavM':ill11i(0x1e3,'e5*m'),'XSqim':function(IillIl,llliil){return IillIl>llliil;},'BTNtJ':'已设置当前账号不取关店铺关注','ZmlfO':function(liIl1,II1lll){return liIl1===II1lll;},'wpmbk':ill11i(0x129,'75&6'),'wtTsb':function(II1lli,ii1I1I){return II1lli(ii1I1I);},'KtuRl':'QueryShopFavList','ypxdW':function(IiIl,IiIi){return IiIl/IiIi;},'cFJzR':function(iI1ll1,IlI1Il){return iI1ll1<IlI1Il;},'hoTxA':'GNDVJ','gXcGn':ill11i(0x192,'kKvB'),'FVELl':function(l1il1l,liIil){return l1il1l<=liIil;},'qKbCL':ill11i(0x14b,'e5TU'),'ryagb':ill11i(0x13a,'UTY]'),'MQrCJ':function(IllI1I,liIii){return IllI1I(liIii);},'Osudp':ill11i(0x13d,'8%]&'),'NtUgw':ill11i(0x11f,'!FN5'),'EYOxC':ill11i(0x10d,'$y00'),'GSdap':ill11i(0x1ec,')6yr')},l11i1l=await common[ill11i(0x13c,'c*Et')](cookie);if(!l11i1l&&typeof l11i1l===illIli[ill11i(0xdc,'SWPV')]){if(illIli[ill11i(0xe7,'kKvB')](illIli[ill11i(0xd0,'kKvB')],'EEKdF')){console['log']('账号无效');return;}else i1li['followProductList']=li1II[ill11i(0x184,'$38l')]||[],IliI11['totalNum']=illIli['ObKtR'](i1ll,i1l1lI?.['totalNum']||0x0);}try{if(illIli[ill11i(0x1a5,'daRL')](illIli[ill11i(0x157,')6yr')],illIli['QwtHd'])){if(illIli[ill11i(0x168,'SWPV')](pinFilterGoods[ill11i(0x1cb,'ADEt')],0x0)&&(pinFilterGoods[ill11i(0x1b1,'^%z^')]($['UserName'])||pinFilterGoods[ill11i(0x172,'8%]&')](illIli[ill11i(0x1b3,'xOn%')](encodeURIComponent,$[ill11i(0x12c,'rC#&')]))))ill11i(0x112,'9kfZ')!==illIli[ill11i(0x131,'UTY]')]?console[ill11i(0x200,'^%z^')](illIli[ill11i(0x1b8,'ADEt')]):iliIIi[ill11i(0x1c0,'A]sE')](ill11i(0x206,'RD3s')+(ill11I?.[ill11i(0x137,'xOn%')]||Iliiil[ill11i(0x194,'kKvB')](li1Il)));else{$[ill11i(0x216,'EV#h')]=0x0,$[ill11i(0x147,'e5*m')]=[],await illIli['ObKtR'](sendRequest,illIli[ill11i(0xe1,'7nBK')]);if(illIli['CvKUE']($[ill11i(0x1dd,'RD3s')],0x0)){console[ill11i(0x145,'9kfZ')](ill11i(0x162,'7nBK')+$[ill11i(0x166,'oD!E')]+ill11i(0x19d,'RD3s')),$[ill11i(0x10c,'2eVh')][ill11i(0x20a,'e5*m')]('已收藏'+$['totalNum']+ill11i(0xda,'9kfZ'));const i11I1I=Math['ceil']($[ill11i(0x1fb,'o$du')]/0x1e);for(let l1il1i=0x0;illIli[ill11i(0x18a,']kx!')](l1il1i,i11I1I);l1il1i++){await $[ill11i(0xec,'qXdF')](0x3e8),$[ill11i(0x186,'o$du')]=$[ill11i(0x17e,'4URt')][ill11i(0x21a,'5Yuk')](ll1=>ll1?.['commTitle']&&ll1?.['commId']&&ll1?.['commId']!=='0');if($[ill11i(0x176,'2eVh')][ill11i(0x1f0,'oD!E')]>0x0){const iI1llI=$[ill11i(0x1f7,'MS0i')][ill11i(0x1db,'2uf2')](llliii=>llliii[ill11i(0x10f,'e5TU')]);console[ill11i(0x1dc,'EJCN')](ill11i(0x164,'9kfZ')+iI1llI[ill11i(0x218,'YT7&')]+ill11i(0x160,'o$du')),$[ill11i(0xe4,'YT7&')]=iI1llI['join'](','),await illIli[ill11i(0x116,')6yr')](sendRequest,illIli[ill11i(0x1ff,'SWPV')]),await $[ill11i(0x14f,'$38l')](0x7d0);}$['followProductList']=[],$['commId']='',await illIli[ill11i(0x100,'k$rM')](sendRequest,illIli[ill11i(0x169,'ADEt')]),await $[ill11i(0x207,'8NjD')](0x1388);}}else console[ill11i(0x108,'xOn%')](illIli[ill11i(0x20f,'r9J1')]),$[ill11i(0x10c,'2eVh')][ill11i(0x180,'e5TU')]('没有收藏的商品');}console[ill11i(0x11b,'r9J1')]('');if(illIli[ill11i(0x105,'18Ox')](pinFilterShop['length'],0x0)&&(pinFilterShop['includes']($[ill11i(0x11d,'8%]&')])||pinFilterShop['includes'](illIli[ill11i(0x116,')6yr')](encodeURIComponent,$[ill11i(0x1ab,'A]sE')]))))console[ill11i(0x14e,'2uf2')](illIli[ill11i(0x1f8,'8%]&')]);else{if(illIli[ill11i(0xfb,'xOn%')](illIli[ill11i(0xcd,'Xmiu')],illIli[ill11i(0x1ce,'o$du')])){$['totalNum']=0x0,$[ill11i(0x1b0,'MS0i')]=[],await illIli[ill11i(0xe0,'$38l')](sendRequest,illIli[ill11i(0xf9,'ADEt')]);if(illIli['CvKUE']($['totalNum'],0x0)){console['log'](ill11i(0x1fa,'0sOT')+$[ill11i(0x1d1,'8%]&')]+ill11i(0x1ea,'daRL')),$[ill11i(0x1f5,'kKvB')][ill11i(0x109,'rC#&')]('已关注'+$[ill11i(0x16f,'9kfZ')]+ill11i(0x1ae,'xOn%'));const IllI11=Math['ceil'](illIli[ill11i(0x118,'75&6')]($[ill11i(0x15a,'t1B4')],0xa));for(let l1llIi=0x0;illIli[ill11i(0x149,'8%]&')](l1llIi,IllI11);l1llIi++){if(illIli['hoTxA']===illIli[ill11i(0x1ac,'o$du')])lI1Ili['assign'](IliilI,i1II1);else{await $[ill11i(0x1da,'w9cU')](0x3e8),$[ill11i(0x1a8,'e5*m')]=$[ill11i(0x181,'A]sE')][ill11i(0x111,']kx!')](i11I11=>i11I11?.[ill11i(0x1b5,'ADEt')]&&i11I11?.[ill11i(0x15b,'r9J1')]&&i11I11?.['shopId']&&i11I11?.[ill11i(0x1d2,'$y00')]!=='0');if($['QueryShopFavListData']['length']>0x0){const l1llIl=$[ill11i(0x1a8,'e5*m')][ill11i(0x1e4,'c*Et')](ii1I1l=>ii1I1l[ill11i(0x189,'18Ox')]);console[ill11i(0xce,'!FN5')](ill11i(0x16e,'$38l')+l1llIl[ill11i(0x218,'YT7&')]+ill11i(0xd9,'e5*m')),illIli[ill11i(0x123,'18Ox')](l1llIl['length'],0x1)?illIli[ill11i(0x19f,'PZJ8')]===illIli[ill11i(0x175,'e1mL')]?(lIIil1['log'](IIli1),II1liI&&(I1l1Il[ill11i(0x19a,'A]sE')]=!![],llIll1[ill11i(0x1b9,'0sOT')]&&lIIiil[ill11i(0x106,'UTY]')][ill11i(0x177,'8%]&')](l1lIii))):($[ill11i(0x1c5,'e5TU')]=l1llIl[0x0]||'',await illIli[ill11i(0x151,'e1mL')](sendRequest,ill11i(0xea,'Xmiu'))):($[ill11i(0x132,'w9cU')]=l1llIl['join'](','),await illIli[ill11i(0x18d,'MH7v')](sendRequest,illIli[ill11i(0x14a,'9kfZ')])),await $[ill11i(0xf7,'c*Et')](0x7d0);}$[ill11i(0x1b6,'UTY]')]=[],$[ill11i(0xd5,'s%[y')]='',await illIli[ill11i(0x15f,'PZJ8')](sendRequest,'QueryShopFavList'),await $[ill11i(0x13e,'2uf2')](0x1388);}}}else console[ill11i(0x1cf,'daRL')](illIli[ill11i(0x1c3,'EJCN')]),$['message'][ill11i(0x198,'2eVh')](ill11i(0x11f,'!FN5'));}else Iil1I1['log'](ill11i(0x16c,'e5TU')+(Ii1iII?.[ill11i(0x1b2,')6yr')]||l1i11I[ill11i(0x144,'8NjD')](II11II))),Ii1iI1[ill11i(0x1ee,'$y00')][ill11i(0x1eb,'k$rM')](illIli[ill11i(0x214,'UTY]')]);}}else IIlii[ill11i(0x1a6,'qXdF')]['fix'](IlI1il);}catch(iI1li1){illIli['EigHt'](illIli[ill11i(0x185,'UTY]')],illIli[ill11i(0x1d0,'!FN5')])?i1illi[ill11i(0x141,'2eVh')]('❌\x20未能正确处理\x20'+i1illl+ill11i(0x17d,'daRL')+(I1llil[ill11i(0x15d,'PZJ8')]||I1llii)):console['log'](ill11i(0x202,'$y00')+iI1li1);}}async function handleResponse(liIli,liIll){const lllill=lllli,IilIi1={'lZbhl':lllill(0x1bd,']kx!'),'aSIAq':lllill(0x16a,'xOn%'),'dSGIg':function(iI1liI,l1lIiI){return iI1liI===l1lIiI;},'ZgrlL':function(llliiI,IilIiI){return llliiI(IilIiI);},'iSXaQ':lllill(0xd3,'SWPV'),'jMJGq':'delFollowProduct','IQhng':lllill(0x14d,'PZJ8'),'OFejV':lllill(0x12b,'xOn%'),'qpfeW':lllill(0x12a,'8NjD'),'DcZWg':lllill(0x1af,'7nBK'),'fUIcr':'ckhlT','QwWuc':lllill(0x1b4,'9kfZ'),'cipxG':lllill(0x140,']kx!'),'ZxWau':function(i1i1I1,IlII1){return i1i1I1===IlII1;},'WEUGA':lllill(0x1e1,'8%]&'),'zLTkq':lllill(0x136,'5Yuk'),'Doayc':lllill(0x1d6,'MS0i'),'kknHJ':'取关店铺关注成功','FaHNK':'取关店铺关注失败'};try{switch(liIli){case IilIi1[lllill(0x114,'e1mL')]:if(IilIi1[lllill(0x20e,'8NjD')](liIll['code'],'0'))$['followProductList']=liIll[lllill(0xd4,'0sOT')]||[],$['totalNum']=IilIi1[lllill(0xf0,'2eVh')](parseInt,liIll?.['totalNum']||0x0);else{if(IilIi1['dSGIg'](IilIi1['iSXaQ'],lllill(0xe8,'8%]&'))){IiilI1['log']('账号无效');return;}else console[lllill(0x145,'9kfZ')](lllill(0x178,'!FN5')+(liIll?.[lllill(0x137,'xOn%')]||JSON[lllill(0x208,'!FN5')](liIll)));}break;case IilIi1[lllill(0x1d4,'!FN5')]:liIll[lllill(0x210,')6yr')]==='0'?(console[lllill(0x1c0,'A]sE')](IilIi1['IQhng']),$['message'][lllill(0x16d,'MS0i')](IilIi1[lllill(0x130,'e5TU')])):(console[lllill(0x11e,'8%]&')](lllill(0x121,'&O8K')+(liIll?.[lllill(0x1f9,'PZJ8')]||JSON[lllill(0x144,'8NjD')](liIll))),$[lllill(0x203,'PuPD')][lllill(0x190,'Xmiu')](IilIi1[lllill(0x1bf,'rC#&')]));break;case IilIi1[lllill(0x1cd,'7nBK')]:liIll['iRet']==='0'?($['QueryShopFavListData']=liIll[lllill(0x139,'e5TU')]||[],$['totalNum']=parseInt(liIll?.[lllill(0x12e,'Xmiu')]||0x0)):IilIi1['fUIcr']===IilIi1[lllill(0x18c,'daRL')]?console['log']('❌\x20查询店铺关注列表失败\x20=>\x20'+(liIll?.[lllill(0x15e,'UTY]')]||JSON[lllill(0xcf,']kx!')](liIll))):I1iIl1['log']('❌\x20脚本运行遇到了错误\x0a'+i1il);break;case IilIi1[lllill(0x1a9,'0sOT')]:case IilIi1[lllill(0x165,'7nBK')]:IilIi1[lllill(0xf4,'s%[y')](liIll[lllill(0x187,'8%]&')],'0')?IilIi1['WEUGA']===IilIi1['zLTkq']?(delete I1iIll[lllill(0x135,'8%]&')],delete I1lliI[lllill(0xdd,'c*Et')][IilIi1[lllill(0x1a1,']kx!')]]):(console[lllill(0xd1,'w9cU')](IilIi1[lllill(0x102,'t1B4')]),$[lllill(0x1b7,'EJCN')]['insert'](IilIi1['kknHJ'])):(console[lllill(0x126,'o$du')](lllill(0xf5,'ay#e')+(liIll?.['errMsg']||JSON[lllill(0x194,'kKvB')](liIll))),$['message'][lllill(0x1c1,')6yr')](IilIi1[lllill(0x1e2,'5Yuk')]));break;}}catch(lll){console['log']('❌\x20未能正确处理\x20'+liIli+lllill(0x12f,'MS0i')+(lll['message']||lll));}}async function sendRequest(llli1){const ill11l=lllli,iIli1i={'wwBFe':ill11l(0x143,'4URt'),'MEqwf':ill11l(0x217,'w9cU'),'lUyqH':ill11l(0x128,'e5*m'),'eZjYF':ill11l(0x127,'ADEt'),'BNwKf':'1_72_2819_0','nGNHV':ill11l(0x11c,'e5*m'),'HQsFG':ill11l(0x188,'qXdF'),'PxyLU':ill11l(0xd2,'daRL'),'RdPkk':'https://api.m.jd.com/api','fkFNg':ill11l(0x1e7,'r9J1'),'DpiEl':'ms0ca95114','LfbJr':ill11l(0x1c4,'8%]&'),'zRnlf':ill11l(0x120,'ADEt'),'pRYgI':ill11l(0x10e,'r9J1'),'Twxel':'DelShopFav','AgxoS':ill11l(0x115,'8NjD'),'skOEZ':ill11l(0xd6,'ay#e'),'XoPzq':ill11l(0x193,'8NjD'),'poSAS':ill11l(0x1fc,'m$KP'),'bzTGC':'application/json','ZxphN':ill11l(0x104,'rC#&'),'PWFVu':ill11l(0x17c,'oD!E'),'kikHd':ill11l(0x10b,'MH7v'),'JXGdV':ill11l(0x18f,'ay#e'),'iahuP':'https://wqs.jd.com','bKIYi':ill11l(0x125,'t1B4'),'kjLBl':ill11l(0x20c,')6yr'),'hCcDA':function(iIII1I,ilil1i){return iIII1I===ilil1i;},'NYMhP':ill11l(0xde,'k$rM'),'nrqDt':function(IlIIi,IiI1l){return IlIIi<IiI1l;},'iscGT':ill11l(0xdf,'5Yuk'),'izSlT':function(illlII,iIII11){return illlII>iIII11;}};if($[ill11l(0x173,'ADEt')]||$[ill11l(0x205,'$38l')])return;let iI1lii='',IilIii=null,iI1lil=null,l1lIi1=iIli1i[ill11l(0x1a2,'18Ox')],iIli1l={},i1i1II={};switch(llli1){case iIli1i[ill11l(0xed,'EV#h')]:i1i1II={'appId':ill11l(0x119,']kx!'),'functionId':ill11l(0x122,'7nBK'),'appid':iIli1i['lUyqH'],'clientVersion':iIli1i[ill11l(0x209,'$38l')],'client':'H5','body':{'cp':0x1,'pageSize':0x1e,'category':'','promote':0x0,'cutPrice':0x0,'coupon':0x0,'stock':0x0,'area':iIli1i[ill11l(0x12d,'MS0i')],'tenantCode':iIli1i[ill11l(0xe5,']kx!')],'bizModelCode':'6','bizModeClientType':'M','externalLoginType':'1'},'version':iIli1i[ill11l(0x1ad,'9kfZ')],'ua':iIli1i[ill11l(0x1f6,'4URt')],'t':!![]},iIli1l=await H5st[ill11l(0x195,'r9J1')](i1i1II),iI1lii=iIli1i[ill11l(0x17a,'s%[y')],iI1lil=Object[ill11l(0x110,'oD!E')]({},iIli1l['paramsData'],{'sceneval':'2','g_login_type':'1','g_ty':iIli1i['fkFNg'],'appCode':iIli1i[ill11l(0x201,'EJCN')]});break;case iIli1i[ill11l(0x199,'4URt')]:iI1lii=ill11l(0x191,'7nBK'),IilIii={'commId':$[ill11l(0xfd,'8%]&')],'tenantCode':'jgm','bizModelCode':'6','bizModeClientType':'M','externalLoginType':'1'},iI1lil={'appid':iIli1i['lUyqH'],'functionId':iIli1i['LfbJr'],'body':JSON[ill11l(0x134,'SWPV')](IilIii),'loginType':'2','sceneval':'2','g_login_type':'1','g_ty':ill11l(0x1ba,'o$du'),'appCode':'ms0ca95114'};break;case'QueryShopFavList':iI1lii=iIli1i[ill11l(0x19b,'RD3s')],iI1lil={'cp':'1','pageSize':'10','_':Date[ill11l(0x1e5,'75&6')](),'sceneval':'2','g_login_type':'1','appCode':iIli1i['DpiEl'],'callback':iIli1i['pRYgI'],'g_ty':'ls'};break;case iIli1i['Twxel']:iI1lii='https://wq.jd.com/fav/shop/DelShopFav',iI1lil={'shopId':$[ill11l(0xfe,'5Yuk')],'_':Date[ill11l(0x197,'c*Et')](),'sceneval':'2','g_login_type':'1','appCode':'ms0ca95114','callback':iIli1i[ill11l(0x1d8,'$38l')],'g_ty':'ls'};break;case ill11l(0x101,'r9J1'):iI1lii=ill11l(0xeb,'RD3s'),iI1lil={'shopId':$[ill11l(0x189,'18Ox')],'_':Date[ill11l(0x1ed,'oD!E')](),'sceneval':'2','g_login_type':'1','appCode':ill11l(0x150,'18Ox'),'callback':iIli1i[ill11l(0x19c,'PZJ8')],'g_ty':'ls'};break;default:console[ill11l(0x1bc,'c*Et')](ill11l(0x18e,'2uf2')+llli1);return;}const liiIIl={};IilIii&&Object['assign'](IilIii,liiIIl);iI1lil&&(iIli1i['XoPzq']!==iIli1i['poSAS']?Object[ill11l(0x21c,'$38l')](iI1lil,liiIIl):(iii1Il['log']('>\x20取关商品收藏成功'),lI1IiI['message'][ill11l(0x1c9,'UTY]')](ill11l(0x219,'$38l'))));const iil1iI={'url':iI1lii,'method':l1lIi1,'headers':{'Accept':[iIli1i[ill11l(0x138,'r9J1')],iIli1i[ill11l(0x124,'YT7&')]]['includes'](llli1)?iIli1i[ill11l(0x156,'SWPV')]:iIli1i['ZxphN'],'Accept-Encoding':'gzip,\x20deflate,\x20br','Accept-Language':iIli1i[ill11l(0x163,'RD3s')],'Connection':iIli1i[ill11l(0x117,'EJCN')],'Content-Type':iIli1i[ill11l(0xdb,'!FN5')],'Cookie':cookie,'Origin':iIli1i[ill11l(0x1ca,'7nBK')],'Referer':iIli1i['bKIYi'],'Sec-Fetch-Dest':ill11l(0x167,'o$du'),'Sec-Fetch-Mode':ill11l(0x154,'EV#h'),'Sec-Fetch-Site':iIli1i[ill11l(0xf2,'qXdF')],'User-Agent':iIli1i[ill11l(0xd8,'^%z^')]},'params':iI1lil,'data':IilIii,'timeout':0x7530};iIli1i[ill11l(0xee,'EJCN')](l1lIi1,iIli1i['wwBFe'])&&(delete iil1iI['data'],delete iil1iI[ill11l(0x152,'&O8K')][iIli1i[ill11l(0x1d9,'oD!E')]]);const IlIllI=0x1;let il1i1I=0x0,lI1li1=null,iI11II=![];while(iIli1i[ill11l(0x213,'2eVh')](il1i1I,IlIllI)){if('whpYt'!==iIli1i[ill11l(0x1f3,'c*Et')]){iIli1i[ill11l(0x159,'9kfZ')](il1i1I,0x0)&&await $[ill11l(0x133,'ay#e')](0x3e8);const llll1=await common[ill11l(0x1a7,'r9J1')](iil1iI);if(!llll1[ill11l(0x107,']kx!')]){lI1li1=ill11l(0xf6,'r9J1')+llli1+'\x20请求失败\x20➜\x20'+llll1['error'],il1i1I++;continue;}if(!llll1['data']){lI1li1=ill11l(0x1c8,'s%[y')+llli1+ill11l(0x19e,']kx!'),il1i1I++;continue;}await handleResponse(llli1,llll1[ill11l(0xe6,'RD3s')]),iI11II=![];break;}else iIIIIi[ill11l(0x1bc,'c*Et')]('没有关注的店铺'),iii1I1[ill11l(0x17b,'k$rM')][ill11l(0x103,'m$KP')](ill11l(0x113,'k$rM'));}il1i1I>=IlIllI&&(console[ill11l(0x13f,'e1mL')](lI1li1),iI11II&&($[ill11l(0xe9,'t1B4')]=!![],$[ill11l(0x196,'r9J1')]&&$[ill11l(0x17b,'k$rM')][ill11l(0x1a0,'SWPV')](lI1li1)));}var version_ = 'jsjiami.com.v7';
// prettier-ignore
function Env(t, e) { "undefined" != typeof process && JSON.stringify(process.env).indexOf("GITHUB") > -1 && process.exit(0); class s { constructor(t) { this.env = t } send(t, e = "GET") { t = "string" == typeof t ? { url: t } : t; let s = this.get; return "POST" === e && (s = this.post), new Promise((e, i) => { s.call(this, t, (t, s, r) => { t ? i(t) : e(s) }) }) } get(t) { return this.send.call(this.env, t) } post(t) { return this.send.call(this.env, t, "POST") } } return new class { constructor(t, e) { this.name = t, this.http = new s(this), this.data = null, this.dataFile = "box.dat", this.logs = [], this.isMute = !1, this.isNeedRewrite = !1, this.logSeparator = "\n", this.startTime = (new Date).getTime(), Object.assign(this, e), this.log("", `🔔${this.name}, 开始!`) } isNode() { return "undefined" != typeof module && !!module.exports } isQuanX() { return "undefined" != typeof $task } isSurge() { return "undefined" != typeof $httpClient && "undefined" == typeof $loon } isLoon() { return "undefined" != typeof $loon } toObj(t, e = null) { try { return JSON.parse(t) } catch { return e } } toStr(t, e = null) { try { return JSON.stringify(t) } catch { return e } } getjson(t, e) { let s = e; const i = this.getdata(t); if (i) try { s = JSON.parse(this.getdata(t)) } catch { } return s } setjson(t, e) { try { return this.setdata(JSON.stringify(t), e) } catch { return !1 } } getScript(t) { return new Promise(e => { this.get({ url: t }, (t, s, i) => e(i)) }) } runScript(t, e) { return new Promise(s => { let i = this.getdata("@chavy_boxjs_userCfgs.httpapi"); i = i ? i.replace(/\n/g, "").trim() : i; let r = this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout"); r = r ? 1 * r : 20, r = e && e.timeout ? e.timeout : r; const [o, h] = i.split("@"), n = { url: `http://${h}/v1/scripting/evaluate`, body: { script_text: t, mock_type: "cron", timeout: r }, headers: { "X-Key": o, Accept: "*/*" } }; this.post(n, (t, e, i) => s(i)) }).catch(t => this.logErr(t)) } loaddata() { if (!this.isNode()) return {}; { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e); if (!s && !i) return {}; { const i = s ? t : e; try { return JSON.parse(this.fs.readFileSync(i)) } catch (t) { return {} } } } } writedata() { if (this.isNode()) { this.fs = this.fs ? this.fs : require("fs"), this.path = this.path ? this.path : require("path"); const t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), i = !s && this.fs.existsSync(e), r = JSON.stringify(this.data); s ? this.fs.writeFileSync(t, r) : i ? this.fs.writeFileSync(e, r) : this.fs.writeFileSync(t, r) } } lodash_get(t, e, s) { const i = e.replace(/\[(\d+)\]/g, ".$1").split("."); let r = t; for (const t of i) if (r = Object(r)[t], void 0 === r) return s; return r } lodash_set(t, e, s) { return Object(t) !== t ? t : (Array.isArray(e) || (e = e.toString().match(/[^.[\]]+/g) || []), e.slice(0, -1).reduce((t, s, i) => Object(t[s]) === t[s] ? t[s] : t[s] = Math.abs(e[i + 1]) >> 0 == +e[i + 1] ? [] : {}, t)[e[e.length - 1]] = s, t) } getdata(t) { let e = this.getval(t); if (/^@/.test(t)) { const [, s, i] = /^@(.*?)\.(.*?)$/.exec(t), r = s ? this.getval(s) : ""; if (r) try { const t = JSON.parse(r); e = t ? this.lodash_get(t, i, "") : e } catch (t) { e = "" } } return e } setdata(t, e) { let s = !1; if (/^@/.test(e)) { const [, i, r] = /^@(.*?)\.(.*?)$/.exec(e), o = this.getval(i), h = i ? "null" === o ? null : o || "{}" : "{}"; try { const e = JSON.parse(h); this.lodash_set(e, r, t), s = this.setval(JSON.stringify(e), i) } catch (e) { const o = {}; this.lodash_set(o, r, t), s = this.setval(JSON.stringify(o), i) } } else s = this.setval(t, e); return s } getval(t) { return this.isSurge() || this.isLoon() ? $persistentStore.read(t) : this.isQuanX() ? $prefs.valueForKey(t) : this.isNode() ? (this.data = this.loaddata(), this.data[t]) : this.data && this.data[t] || null } setval(t, e) { return this.isSurge() || this.isLoon() ? $persistentStore.write(t, e) : this.isQuanX() ? $prefs.setValueForKey(t, e) : this.isNode() ? (this.data = this.loaddata(), this.data[e] = t, this.writedata(), !0) : this.data && this.data[e] || null } initGotEnv(t) { this.got = this.got ? this.got : require("got"), this.cktough = this.cktough ? this.cktough : require("tough-cookie"), this.ckjar = this.ckjar ? this.ckjar : new this.cktough.CookieJar, t && (t.headers = t.headers ? t.headers : {}, void 0 === t.headers.Cookie && void 0 === t.cookieJar && (t.cookieJar = this.ckjar)) } get(t, e = (() => { })) { t.headers && (delete t.headers["Content-Type"], delete t.headers["Content-Length"]), this.isSurge() || this.isLoon() ? (this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.get(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) })) : this.isQuanX() ? (this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t))) : this.isNode() && (this.initGotEnv(t), this.got(t).on("redirect", (t, e) => { try { if (t.headers["set-cookie"]) { const s = t.headers["set-cookie"].map(this.cktough.Cookie.parse).toString(); s && this.ckjar.setCookieSync(s, null), e.cookieJar = this.ckjar } } catch (t) { this.logErr(t) } }).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) })) } post(t, e = (() => { })) { if (t.body && t.headers && !t.headers["Content-Type"] && (t.headers["Content-Type"] = "application/x-www-form-urlencoded"), t.headers && delete t.headers["Content-Length"], this.isSurge() || this.isLoon()) this.isSurge() && this.isNeedRewrite && (t.headers = t.headers || {}, Object.assign(t.headers, { "X-Surge-Skip-Scripting": !1 })), $httpClient.post(t, (t, s, i) => { !t && s && (s.body = i, s.statusCode = s.status), e(t, s, i) }); else if (this.isQuanX()) t.method = "POST", this.isNeedRewrite && (t.opts = t.opts || {}, Object.assign(t.opts, { hints: !1 })), $task.fetch(t).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => e(t)); else if (this.isNode()) { this.initGotEnv(t); const { url: s, ...i } = t; this.got.post(s, i).then(t => { const { statusCode: s, statusCode: i, headers: r, body: o } = t; e(null, { status: s, statusCode: i, headers: r, body: o }, o) }, t => { const { message: s, response: i } = t; e(s, i, i && i.body) }) } } time(t, e = null) { const s = e ? new Date(e) : new Date; let i = { "M+": s.getMonth() + 1, "d+": s.getDate(), "H+": s.getHours(), "m+": s.getMinutes(), "s+": s.getSeconds(), "q+": Math.floor((s.getMonth() + 3) / 3), S: s.getMilliseconds() }; /(y+)/.test(t) && (t = t.replace(RegExp.$1, (s.getFullYear() + "").substr(4 - RegExp.$1.length))); for (let e in i) new RegExp("(" + e + ")").test(t) && (t = t.replace(RegExp.$1, 1 == RegExp.$1.length ? i[e] : ("00" + i[e]).substr(("" + i[e]).length))); return t } msg(e = t, s = "", i = "", r) { const o = t => { if (!t) return t; if ("string" == typeof t) return this.isLoon() ? t : this.isQuanX() ? { "open-url": t } : this.isSurge() ? { url: t } : void 0; if ("object" == typeof t) { if (this.isLoon()) { let e = t.openUrl || t.url || t["open-url"], s = t.mediaUrl || t["media-url"]; return { openUrl: e, mediaUrl: s } } if (this.isQuanX()) { let e = t["open-url"] || t.url || t.openUrl, s = t["media-url"] || t.mediaUrl; return { "open-url": e, "media-url": s } } if (this.isSurge()) { let e = t.url || t.openUrl || t["open-url"]; return { url: e } } } }; if (this.isMute || (this.isSurge() || this.isLoon() ? $notification.post(e, s, i, o(r)) : this.isQuanX() && $notify(e, s, i, o(r))), !this.isMuteLog) { let t = ["", "==============📣系统通知📣=============="]; t.push(e), s && t.push(s), i && t.push(i), console.log(t.join("\n")), this.logs = this.logs.concat(t) } } log(...t) { t.length > 0 && (this.logs = [...this.logs, ...t]), console.log(t.join(this.logSeparator)) } logErr(t, e) { const s = !this.isSurge() && !this.isQuanX() && !this.isLoon(); s ? this.log("", `❗️${this.name}, 错误!`, t.stack) : this.log("", `❗️${this.name}, 错误!`, t) } wait(t) { return new Promise(e => setTimeout(e, t)) } done(t = {}) { const e = (new Date).getTime(), s = (e - this.startTime) / 1e3; this.log("", `🔔${this.name}, 结束! 🕛 ${s}`), this.log(), (this.isSurge() || this.isQuanX() || this.isLoon()) && $done(t) } }(t, e) }