@@ -18,35 +18,14 @@ let VAL_mh5signheader = chavy.getdata(KEY_mh5signheader)
1818 await login ( )
1919 await signapp ( )
2020 await getexp ( )
21- await signmh5 ( )
22- if ( signinfo . signmh5 . ret != - 2011 ) {
23- await getpricelist ( )
24- await getprice ( )
25- }
26- await showmsg ( )
21+ showmsg ( )
2722} ) ( ) . catch ( ( e ) => chavy . log ( `❌ ${ cookieName } 签到失败: ${ e } ` ) )
2823
2924function login ( ) {
3025 return new Promise ( ( resolve , reject ) => {
3126 const url = { url : VAL_loginurl , headers : JSON . parse ( VAL_loginheader ) }
3227 chavy . get ( url , ( error , response , data ) => {
3328 try {
34- const result = JSON . parse ( data . match ( / \( ( .* ) \) ; / ) [ 1 ] )
35- if ( result . errcode == 0 ) {
36- let respcookie = response . headers [ 'Set-Cookie' ]
37- respcookie = respcookie . replace ( / E x p i r e s = ( .* ?) G M T , ? ? / g, '' )
38- respcookie = respcookie . replace ( / P a t h = ( .* ?) ; ? / g, '' )
39- respcookie = respcookie . replace ( / D o m a i n = ( .* ?) ; ? / g, '' )
40- respcookie = respcookie . replace ( / ; $ / g, '' )
41- const setcookies = [ ]
42- for ( setcookie of respcookie . split ( ';' ) ) setcookies . push ( { key : setcookie . split ( '=' ) [ 0 ] , val : setcookie . split ( '=' ) [ 1 ] } )
43- for ( resultcookie in result ) setcookies . push ( { key : resultcookie , val : result [ resultcookie ] } )
44- updateSignAppCookies ( setcookies )
45- updateSignMh5Cookies ( setcookies )
46- } else {
47- chavy . log ( `❌ ${ cookieName } login - 登录失败` )
48- chavy . log ( `❌ ${ cookieName } login - response: ${ JSON . stringify ( response ) } ` )
49- }
5029 resolve ( )
5130 } catch ( e ) {
5231 chavy . msg ( cookieName , `签到结果: 失败` , `说明: ${ e } ` )
@@ -58,43 +37,11 @@ function login() {
5837 } )
5938}
6039
61- function updateSignAppCookies ( cookies ) {
62- if ( VAL_signcookie ) {
63- // chavy.log(`❕ ${cookieName} updateSignAppCookies - oldSignCookie: ${VAL_signcookie}`)
64- for ( cookie of cookies ) {
65- const matchexp = new RegExp ( `${ cookie . key } =[^;]*` , 'g' )
66- if ( VAL_signcookie . indexOf ( cookie . key ) >= 0 ) VAL_signcookie = VAL_signcookie . replace ( matchexp , `${ cookie . key } =${ cookie . val } ` )
67- else VAL_signcookie += `; ${ cookie . key } =${ cookie . val } `
68- }
69- // chavy.log(`❕ ${cookieName} updateSignAppCookies - newSignCookie: ${VAL_signcookie}`)
70- } else {
71- chavy . log ( `⚠ ${ cookieName } updateSignAppCookies: 请先获取 Cookies` )
72- }
73- }
74-
75- function updateSignMh5Cookies ( cookies ) {
76- if ( VAL_mh5signheader ) {
77- const msignheader = JSON . parse ( VAL_mh5signheader )
78- let msignCookies = msignheader . Cookie
79- // chavy.log(`❕ ${cookieName} updateSignMh5Cookies - oldSignheader: ${VAL_mh5signheader}`)
80- for ( cookie of cookies ) {
81- const matchexp = new RegExp ( `${ cookie . key } =[^;]*` , 'g' )
82- if ( msignCookies . indexOf ( cookie . key ) >= 0 ) msignCookies = msignCookies . replace ( matchexp , `${ cookie . key } =${ cookie . val } ` )
83- else msignCookies += `; ${ cookie . key } =${ cookie . val } `
84- }
85- msignheader . Cookie = msignCookies
86- VAL_mh5signheader = JSON . stringify ( msignheader )
87- // chavy.log(`❕ ${cookieName} updateSignMh5Cookies - newSignheader: ${VAL_mh5signheader}`)
88- } else {
89- chavy . log ( `⚠ ${ cookieName } updateSignMh5Cookies: 请先获取 Cookies` )
90- }
91- }
92-
9340function signapp ( ) {
9441 return new Promise ( ( resolve , reject ) => {
9542 const timestamp = Math . round ( new Date ( ) . getTime ( ) / 1000 ) . toString ( )
9643 const VAL_signurl = `https://vip.video.qq.com/fcgi-bin/comm_cgi?name=hierarchical_task_system&cmd=2&_=${ timestamp } `
97- let url = { url : VAL_signurl , headers : { Cookie : VAL_signcookie } }
44+ let url = { url : VAL_signurl , headers : { } }
9845 url . headers [ 'User-Agent' ] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.4 Safari/605.1.15'
9946 chavy . get ( url , ( error , response , data ) => {
10047 try {
@@ -114,7 +61,7 @@ function getexp() {
11461 return new Promise ( ( resolve , reject ) => {
11562 const timestamp = Math . round ( new Date ( ) . getTime ( ) / 1000 ) . toString ( )
11663 const VAL_getexpurl = `https://vip.video.qq.com/fcgi-bin/comm_cgi?name=spp_PropertyNum&cmd=1&growth_value=1&otype=json&_=${ timestamp } `
117- let url = { url : VAL_getexpurl , headers : { Cookie : VAL_signcookie } }
64+ let url = { url : VAL_getexpurl , headers : { } }
11865 url . headers [ 'User-Agent' ] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.4 Safari/605.1.15'
11966 chavy . get ( url , ( error , response , data ) => {
12067 try {
@@ -129,124 +76,28 @@ function getexp() {
12976 } )
13077 } )
13178}
132- function signmh5 ( ) {
133- return new Promise ( ( resolve , reject ) => {
134- const url = { url : VAL_mh5signurl , headers : JSON . parse ( VAL_mh5signheader ) }
135- chavy . get ( url , ( error , response , data ) => {
136- try {
137- signinfo . signmh5 = JSON . parse ( data . match ( / w i n d o w \. _ _ S T A T E _ _ = ( .* ?) < \/ s c r i p t > / ) [ 1 ] ) . payloads . execCheck
138- resolve ( )
139- } catch ( e ) {
140- chavy . msg ( `${ cookieName } (移动端)` , `签到结果: 失败` , `说明: ${ e } ` )
141- chavy . log ( `❌ ${ cookieName } (移动端) signmh5 - 签到失败: ${ e } ` )
142- chavy . log ( `❌ ${ cookieName } (移动端) signmh5 - response: ${ JSON . stringify ( response ) } ` )
143- resolve ( )
144- }
145- } )
146- } )
147- }
148- function getpricelist ( ) {
149- return new Promise ( ( resolve , reject ) => {
150- try {
151- const VAL_getpriceurl = `http://activity.video.qq.com/fcgi-bin/asyn_activity?otype=json&platform=3&magic_appid=2&app_type=1&type=90&act_id=106197&module_id=116049&option=8&days=7`
152- const url = { url : VAL_getpriceurl , headers : JSON . parse ( VAL_mh5signheader ) }
153- url . headers [ 'Host' ] = 'activity.video.qq.com'
154- url . headers [ 'Origin' ] = 'http://v.qq.com'
155- url . headers [ 'Referer' ] = 'http://v.qq.com/x/bu/mobile_checkin'
156- url . headers [ 'User-Agent' ] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.5 Safari/605.1.15'
157- chavy . get ( url , ( error , response , data ) => {
158- signinfo . pricelist = JSON . parse ( data . match ( / \( ( .* ) \) ; / ) [ 1 ] )
159- resolve ( )
160- } )
161- } catch ( e ) {
162- chavy . msg ( `${ cookieName } (移动端)` , `获取结果: 失败` , `说明: ${ e } ` )
163- chavy . log ( `❌ ${ cookieName } (移动端) getpricelist - 获取失败: ${ e } ` )
164- chavy . log ( `❌ ${ cookieName } (移动端) getpricelist - response: ${ JSON . stringify ( response ) } ` )
165- resolve ( )
166- }
167- } )
168- }
169- function getprice ( ) {
170- return new Promise ( ( resolve , reject ) => {
171- try {
172- const VAL_getpriceurl = `http://activity.video.qq.com/fcgi-bin/asyn_activity?otype=json&platform=3&magic_appid=2&app_type=1&type=90&act_id=106197&module_id=116049&option=6&days=7`
173- const url = { url : VAL_getpriceurl , headers : JSON . parse ( VAL_mh5signheader ) }
174- url . headers [ 'Host' ] = 'activity.video.qq.com'
175- url . headers [ 'Origin' ] = 'http://v.qq.com'
176- url . headers [ 'Referer' ] = 'http://v.qq.com/x/bu/mobile_checkin'
177- url . headers [ 'User-Agent' ] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.5 Safari/605.1.15'
178- chavy . get ( url , ( error , response , data ) => {
179- signinfo . priceinfo = JSON . parse ( data . match ( / \( ( .* ) \) ; / ) [ 1 ] )
180- resolve ( )
181- } )
182- } catch ( e ) {
183- chavy . msg ( `${ cookieName } (移动端)` , `抽奖结果: 失败` , `说明: ${ e } ` )
184- chavy . log ( `❌ ${ cookieName } (移动端) getprice - 抽奖失败: ${ e } ` )
185- chavy . log ( `❌ ${ cookieName } (移动端) getprice - response: ${ JSON . stringify ( response ) } ` )
186- resolve ( )
187- }
188- } )
189- }
190- function showmsg ( ) {
191- return new Promise ( ( resolve , reject ) => {
192- // APP签到
193- if ( signinfo . signapp ) {
194- let subTitle , detail
195- if ( signinfo . signapp . ret == 0 ) {
196- subTitle = '签到结果: 成功'
197- if ( signinfo . expinfo ) {
198- subTitle += ! signinfo . signapp . checkin_score ? ' (重复签到)' : ''
199- detail = `V力值: ${ signinfo . expinfo . GrowthValue . num } (+${ signinfo . signapp . checkin_score } ), 观影券: ${ signinfo . expinfo . MovieTicket . num } , 赠片资格: ${ signinfo . expinfo . GiveMovie . num } `
200- }
201- } else if ( signinfo . signapp . ret == - 10006 ) {
202- subTitle = '签到结果: 失败'
203- detail = `原因: 未登录, 说明: ${ signinfo . signapp . msg } `
204- } else if ( signinfo . signapp . ret == - 10019 ) {
205- subTitle = '签到结果: 失败'
206- detail = `原因: 非会员, 说明: ${ signinfo . signapp . msg } `
207- } else {
208- subTitle = '签到结果: 未知'
209- detail = `编码: ${ signinfo . signapp . ret } , 说明: ${ signinfo . signapp . msg } `
210- }
211- chavy . msg ( cookieName , subTitle , detail )
212- }
213-
214- // H5签到
215- if ( signinfo . signmh5 ) {
216- let subTitle , detail
217- if ( signinfo . signmh5 . ret == 0 ) {
218- subTitle = `签到结果: 成功`
219- if ( signinfo . signmh5 . data && signinfo . signmh5 . data . show_text_1 ) detail = `说明: ${ signinfo . signmh5 . data . show_text_1 } `
220- else detail = `说明: ${ signinfo . signmh5 . msg } `
221- } else if ( signinfo . signmh5 . ret == - 2021 ) {
222- subTitle = `签到结果: 成功(重复签到)`
223- } else {
224- subTitle = `签到结果: 失败`
225- detail = `编码: ${ signinfo . signmh5 . ret } , 说明: ${ signinfo . signmh5 . msg } `
226- }
227- if ( signinfo . signmh5 . ret != - 2011 ) chavy . msg ( `${ cookieName } (移动端)` , subTitle , detail )
228- }
22979
230- // 会员抽奖
231- if ( signinfo . priceinfo && signinfo . pricelist ) {
232- let subTitle , detail
233- if ( signinfo . priceinfo . ret == 0 && signinfo . priceinfo . data ) {
234- subTitle = `抽奖结果: 成功 (第${ signinfo . priceinfo . data . day } 天)`
235- detail = `${ signinfo . priceinfo . data . prize_name } : +${ signinfo . priceinfo . data . prize_num } , ${ signinfo . priceinfo . data . extra_prize_name } : +${ signinfo . priceinfo . data . extra_prize_level } 等奖`
236- chavy . log ( `❕ ${ cookieName } (移动端) 抽奖池: ${ JSON . stringify ( signinfo . pricelist ) } ` )
237- } else if ( signinfo . priceinfo . ret == - 2023 ) {
238- subTitle = `抽奖结果: 重复`
239- detail = `说明: ${ signinfo . priceinfo . msg } `
240- chavy . log ( `❕ ${ cookieName } (移动端) 抽奖池: ${ JSON . stringify ( signinfo . pricelist ) } ` )
241- } else {
242- subTitle = `抽奖结果: 失败`
243- detail = `编码: ${ signinfo . priceinfo . ret } , 说明: ${ signinfo . priceinfo . msg } `
80+ function showmsg ( ) {
81+ if ( signinfo . signapp ) {
82+ let subTitle , detail
83+ if ( signinfo . signapp . ret == 0 ) {
84+ subTitle = '签到结果: 成功'
85+ if ( signinfo . expinfo ) {
86+ subTitle += ! signinfo . signapp . checkin_score ? ' (重复签到)' : ''
87+ detail = `V力值: ${ signinfo . expinfo . GrowthValue . num } (+${ signinfo . signapp . checkin_score } ), 观影券: ${ signinfo . expinfo . MovieTicket . num } , 赠片资格: ${ signinfo . expinfo . GiveMovie . num } `
24488 }
245- if ( signinfo . priceinfo . ret != - 2011 ) chavy . msg ( `${ cookieName } (移动端)` , subTitle , detail )
89+ } else if ( signinfo . signapp . ret == - 10006 ) {
90+ subTitle = '签到结果: 失败'
91+ detail = `原因: 未登录, 说明: ${ signinfo . signapp . msg } `
92+ } else if ( signinfo . signapp . ret == - 10019 ) {
93+ subTitle = '签到结果: 失败'
94+ detail = `原因: 非会员, 说明: ${ signinfo . signapp . msg } `
95+ } else {
96+ subTitle = '签到结果: 未知'
97+ detail = `编码: ${ signinfo . signapp . ret } , 说明: ${ signinfo . signapp . msg } `
24698 }
247-
248- resolve ( )
249- } )
99+ chavy . msg ( cookieName , subTitle , detail )
100+ }
250101}
251102
252103function init ( ) {
0 commit comments