Skip to content

Commit 196e35a

Browse files
author
ziye12
authored
企鹅读书 解决1金币问题,务必获取一次更新body,更新秘密
1 parent ca78600 commit 196e35a

File tree

1 file changed

+69
-41
lines changed

1 file changed

+69
-41
lines changed

Task/qqreads.js

Lines changed: 69 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,11 @@
1616
12.3 缩短运行时间,由于企鹅读书版本更新.请手动进去看一次书
1717
12.3 调整推送时间为12点和24点左右
1818
12.6 精简打印通知
19+
12.7 解决1金币问题,
1920
2021
⚠️cookie获取方法:
2122
22-
进 https://m.q.qq.com/a/s/d3eacc70120b9a37e46bad408c0c4c2a 点我的 获取cookie
23+
进 https://m.q.qq.com/a/s/d3eacc70120b9a37e46bad408c0c4c2a 点我的 获取更新body
2324
2425
进一本书 看 10秒以下 然后退出,获取阅读时长cookie,看书一定不能超过10秒
2526
@@ -32,26 +33,26 @@ hostname=mqqapi.reader.qq.com
3233
############## 圈x
3334
3435
#企鹅读书获取cookie
35-
https:\/\/mqqapi\.reader\.qq\.com\/mqq\/user\/init url script-request-header https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js
36+
https:\/\/mqqapi\.reader\.qq\.com\/log\/v4\/mqq\/track url script-request-body https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js
3637
3738
#企鹅读书获取时长cookie
3839
https:\/\/mqqapi\.reader\.qq\.com\/mqq\/addReadTimeWithBid? url script-request-header https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js
3940
4041
############## loon
4142
4243
//企鹅读书获取cookie
43-
http-request https:\/\/mqqapi\.reader\.qq\.com\/mqq\/user\/init script-path=https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js,requires-header=true, tag=企鹅读书获取cookie
44+
http-request https:\/\/mqqapi\.reader\.qq\.com\/log\/v4\/mqq\/track script-path=https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js,requires-body=true, tag=企鹅读书获取cookie
4445
4546
//企鹅读书获取时长cookie
4647
http-request https:\/\/mqqapi\.reader\.qq\.com\/mqq\/addReadTimeWithBid? script-path=https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js, requires-header=true, tag=企鹅读书获取时长cookie
4748
4849
############## surge
4950
5051
//企鹅读书获取cookie
51-
企鹅读书 = type=http-request,pattern=https:\/\/mqqapi\.reader\.qq\.com\/mqq\/user\/init,script-path=https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js, requires-header=true
52+
企鹅读书 = type=http-request,pattern=https:\/\/mqqapi\.reader\.qq\.com\/log\/v4\/mqq\/track,script-path=https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js,
5253
5354
//企鹅读书获取时长cookie
54-
企鹅读书 = type=http-request,pattern=https:\/\/mqqapi\.reader\.qq\.com\/mqq\/addReadTimeWithBid?,script-path=https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js, requires-header=true
55+
企鹅读书 = type=http-request,pattern=https:\/\/mqqapi\.reader\.qq\.com\/mqq\/addReadTimeWithBid?,script-path=https://raw.githubusercontent.com/ziye12/JavaScript/master/Task/qqreads.js,
5556
5657
5758
*/
@@ -76,13 +77,13 @@ const TIME = 30; // 单次时长上传限制,默认5分钟
7677
const maxtime = 12; // 每日上传时长限制,默认12小时
7778
const wktimess = 1200; // 周奖励领取标准,默认1200分钟
7879

79-
const qqreadhdArr = [];
80-
let qqreadheaderVal = "";
80+
const qqreadbdArr = [];
81+
let qqreadbodyVal = "";
8182
const qqreadtimeurlArr = [];
8283
let qqreadtimeurlVal = "";
8384
const qqreadtimehdArr = [];
8485
let qqreadtimeheaderVal = "";
85-
let qqreadHD = [];
86+
let qqreadBD = [];
8687
let qqreadtimeURL = [];
8788
let qqreadtimeHD = [];
8889
if ($.isNode()) {
@@ -95,12 +96,12 @@ if ($.isNode()) {
9596
)} =============\n`
9697
);
9798
if (
98-
process.env.QQREAD_HEADER &&
99-
process.env.QQREAD_HEADER.indexOf(COOKIES_SPLIT) > -1
99+
process.env.QQREAD_BODY &&
100+
process.env.QQREAD_BODY.indexOf(COOKIES_SPLIT) > -1
100101
) {
101-
qqreadHD = process.env.QQREAD_HEADER.split(COOKIES_SPLIT);
102+
qqreadBD = process.env.QQREAD_BODY.split(COOKIES_SPLIT);
102103
} else {
103-
qqreadHD = process.env.QQREAD_HEADER.split();
104+
qqreadBD = process.env.QQREAD_BODY.split();
104105
}
105106

106107
if (
@@ -123,9 +124,9 @@ if ($.isNode()) {
123124
}
124125

125126
if ($.isNode()) {
126-
Object.keys(qqreadHD).forEach((item) => {
127-
if (qqreadHD[item]) {
128-
qqreadhdArr.push(qqreadHD[item]);
127+
Object.keys(qqreadBD).forEach((item) => {
128+
if (qqreadBD[item]) {
129+
qqreadbdArr.push(qqreadBD[item]);
129130
}
130131
});
131132
Object.keys(qqreadtimeURL).forEach((item) => {
@@ -140,15 +141,15 @@ if ($.isNode()) {
140141
});
141142

142143
console.log(
143-
`============ 共${qqreadhdArr.length}个企鹅读书账号 =============\n`
144+
`============ 共${qqreadbdArr.length}个企鹅读书账号 =============\n`
144145
);
145146
console.log(
146147
`============ 脚本执行-北京时间(UTC+8):${new Date(
147148
new Date().getTime() + 8 * 60 * 60 * 1000
148149
).toLocaleString()} =============\n`
149150
);
150151
} else {
151-
qqreadhdArr.push($.getdata("qqreadhd"));
152+
qqreadbdArr.push($.getdata("qqreadbd"));
152153
qqreadtimeurlArr.push($.getdata("qqreadtimeurl"));
153154
qqreadtimehdArr.push($.getdata("qqreadtimehd"));
154155
}
@@ -158,11 +159,11 @@ if ((isGetCookie = typeof $request !== "undefined")) {
158159
}
159160

160161
function GetCookie() {
161-
if ($request && $request.url.indexOf("init") >= 0) {
162-
const qqreadheaderVal = JSON.stringify($request.headers);
163-
if (qqreadheaderVal) $.setdata(qqreadheaderVal, "qqreadhd");
164-
$.log(`[${jsname}] 获取Cookie: 成功,qqreadheaderVal: ${qqreadheaderVal}`);
165-
$.msg(jsname, `获取cookie: 成功🎉`, ``);
162+
if ($request && $request.url.indexOf("track") >= 0) {
163+
const qqreadbodyVal = $request.body;
164+
if (qqreadbodyVal) $.setdata(qqreadbodyVal, "qqreadbd");
165+
$.log(`[${jsname}] 获取更新body: 成功,qqreadbodyVal: ${qqreadbodyVal}`);
166+
$.msg(jsname, `获取更新body: 成功🎉`, ``);
166167
} else if ($request && $request.url.indexOf("addReadTimeWithBid?") >= 0) {
167168
const qqreadtimeurlVal = $request.url;
168169
if (qqreadtimeurlVal) $.setdata(qqreadtimeurlVal, "qqreadtimeurl");
@@ -179,10 +180,12 @@ function GetCookie() {
179180
}
180181
}
181182

183+
184+
182185
let K = 0;
183186
all();
184187
function all() {
185-
qqreadheaderVal = qqreadhdArr[K];
188+
qqreadbodyVal = qqreadbdArr[K];
186189
qqreadtimeurlVal = qqreadtimeurlArr[K];
187190
qqreadtimeheaderVal = qqreadtimehdArr[K];
188191
for (let i = 0; i < 15; i++) {
@@ -194,6 +197,8 @@ function all() {
194197
qqreadwktime(); // 周时长查询
195198
qqreadconfig(); // 时长查询
196199
} else if (i == 1) qqreadtask();
200+
else if (
201+
i == 2) qqreadtrack();
197202
// 任务列表
198203
else if (
199204
i == 3 &&
@@ -235,10 +240,10 @@ function all() {
235240
else if (i == 13 && task.data && task.data.taskList[1].doneFlag == 0)
236241
qqreadssr3();
237242
// 阅读金币3
238-
else if (i == 14 && K < qqreadhdArr.length - 1) {
243+
else if (i == 14 && K < qqreadbdArr.length - 1) {
239244
K += 1;
240245
all();
241-
} else if (i == 14 && K == qqreadhdArr.length - 1) {
246+
} else if (i == 14 && K == qqreadbdArr.length - 1) {
242247
showmsg(); // 通知
243248
$.done();
244249
}
@@ -255,7 +260,7 @@ function qqreadtask() {
255260
return new Promise((resolve, reject) => {
256261
const toqqreadtaskurl = {
257262
url: "https://mqqapi.reader.qq.com/mqq/red_packet/user/page?fromGuid=",
258-
headers: JSON.parse(qqreadheaderVal),
263+
headers: JSON.parse(qqreadtimeheaderVal),
259264

260265
timeout: 60000,
261266
};
@@ -284,13 +289,36 @@ function qqreadtask() {
284289
});
285290
}
286291

292+
293+
// 更新
294+
function qqreadtrack() {
295+
return new Promise((resolve, reject) => {
296+
const toqqreadtrackurl = {
297+
url: "https://mqqapi.reader.qq.com/log/v4/mqq/track",
298+
299+
headers: JSON.parse(qqreadtimeheaderVal),
300+
body: qqreadbodyVal,
301+
timeout: 60000,
302+
};
303+
$.post(toqqreadtrackurl, (error, response, data) => {
304+
if (logs) $.log(`${jsname}, 更新: ${data}`);
305+
track = JSON.parse(data);
306+
tz += `【数据更新】:更新${track.msg}\n`;
307+
resolve();
308+
});
309+
});
310+
}
311+
312+
313+
314+
287315
// 用户名
288316
function qqreadinfo() {
289317
return new Promise((resolve, reject) => {
290318
const toqqreadinfourl = {
291319
url: "https://mqqapi.reader.qq.com/mqq/user/init",
292320

293-
headers: JSON.parse(qqreadheaderVal),
321+
headers: JSON.parse(qqreadtimeheaderVal),
294322

295323
timeout: 60000,
296324
};
@@ -310,7 +338,7 @@ function qqreadtake() {
310338
return new Promise((resolve, reject) => {
311339
const toqqreadtakeurl = {
312340
url: "https://mqqapi.reader.qq.com/mqq/sign_in/user",
313-
headers: JSON.parse(qqreadheaderVal),
341+
headers: JSON.parse(qqreadtimeheaderVal),
314342
timeout: 60000,
315343
};
316344
$.post(toqqreadtakeurl, (error, response, data) => {
@@ -332,7 +360,7 @@ function qqreadconfig() {
332360
const toqqreadconfigurl = {
333361
url:
334362
"https://mqqapi.reader.qq.com/mqq/page/config?router=%2Fpages%2Fbook-read%2Findex&options=",
335-
headers: JSON.parse(qqreadheaderVal),
363+
headers: JSON.parse(qqreadtimeheaderVal),
336364
};
337365
$.get(toqqreadconfigurl, (error, response, data) => {
338366
if (logs) $.log(`${jsname}, 阅读时长查询: ${data}`);
@@ -369,7 +397,7 @@ function qqreadssr1() {
369397
return new Promise((resolve, reject) => {
370398
const toqqreadssr1url = {
371399
url: `https://mqqapi.reader.qq.com/mqq/red_packet/user/read_time?seconds=30`,
372-
headers: JSON.parse(qqreadheaderVal),
400+
headers: JSON.parse(qqreadtimeheaderVal),
373401
timeout: 60000,
374402
};
375403
if (config.data && config.data.pageParams.todayReadSeconds / 60 >= 1) {
@@ -390,7 +418,7 @@ function qqreadssr2() {
390418
return new Promise((resolve, reject) => {
391419
const toqqreadssr2url = {
392420
url: `https://mqqapi.reader.qq.com/mqq/red_packet/user/read_time?seconds=300`,
393-
headers: JSON.parse(qqreadheaderVal),
421+
headers: JSON.parse(qqreadtimeheaderVal),
394422
timeout: 60000,
395423
};
396424
if (config.data && config.data.pageParams.todayReadSeconds / 60 >= 5) {
@@ -411,7 +439,7 @@ function qqreadssr3() {
411439
return new Promise((resolve, reject) => {
412440
const toqqreadssr3url = {
413441
url: `https://mqqapi.reader.qq.com/mqq/red_packet/user/read_time?seconds=1800`,
414-
headers: JSON.parse(qqreadheaderVal),
442+
headers: JSON.parse(qqreadtimeheaderVal),
415443
timeout: 60000,
416444
};
417445
if (config.data && config.data.pageParams.todayReadSeconds / 60 >= 30) {
@@ -432,7 +460,7 @@ function qqreadsign() {
432460
return new Promise((resolve, reject) => {
433461
const toqqreadsignurl = {
434462
url: "https://mqqapi.reader.qq.com/mqq/red_packet/user/clock_in/page",
435-
headers: JSON.parse(qqreadheaderVal),
463+
headers: JSON.parse(qqreadtimeheaderVal),
436464
timeout: 60000,
437465
};
438466
$.get(toqqreadsignurl, (error, response, data) => {
@@ -452,7 +480,7 @@ function qqreadsign2() {
452480
const toqqreadsign2url = {
453481
url: "https://mqqapi.reader.qq.com/mqq/red_packet/user/clock_in_video",
454482

455-
headers: JSON.parse(qqreadheaderVal),
483+
headers: JSON.parse(qqreadtimeheaderVal),
456484
timeout: 60000,
457485
};
458486
$.get(toqqreadsign2url, (error, response, data) => {
@@ -473,7 +501,7 @@ function qqreaddayread() {
473501
const toqqreaddayreadurl = {
474502
url: "https://mqqapi.reader.qq.com/mqq/red_packet/user/read_book",
475503

476-
headers: JSON.parse(qqreadheaderVal),
504+
headers: JSON.parse(qqreadtimeheaderVal),
477505
timeout: 60000,
478506
};
479507
$.get(toqqreaddayreadurl, (error, response, data) => {
@@ -493,7 +521,7 @@ function qqreadvideo() {
493521
return new Promise((resolve, reject) => {
494522
const toqqreadvideourl = {
495523
url: "https://mqqapi.reader.qq.com/mqq/red_packet/user/watch_video",
496-
headers: JSON.parse(qqreadheaderVal),
524+
headers: JSON.parse(qqreadtimeheaderVal),
497525
timeout: 60000,
498526
};
499527
$.get(toqqreadvideourl, (error, response, data) => {
@@ -513,7 +541,7 @@ function qqreadbox() {
513541
return new Promise((resolve, reject) => {
514542
const toqqreadboxurl = {
515543
url: "https://mqqapi.reader.qq.com/mqq/red_packet/user/treasure_box",
516-
headers: JSON.parse(qqreadheaderVal),
544+
headers: JSON.parse(qqreadtimeheaderVal),
517545
timeout: 60000,
518546
};
519547
$.get(toqqreadboxurl, (error, response, data) => {
@@ -535,7 +563,7 @@ function qqreadbox2() {
535563
url:
536564
"https://mqqapi.reader.qq.com/mqq/red_packet/user/treasure_box_video",
537565

538-
headers: JSON.parse(qqreadheaderVal),
566+
headers: JSON.parse(qqreadtimeheaderVal),
539567
timeout: 60000,
540568
};
541569
$.get(toqqreadbox2url, (error, response, data) => {
@@ -555,7 +583,7 @@ function qqreadwktime() {
555583
return new Promise((resolve, reject) => {
556584
const toqqreadwktimeurl = {
557585
url: `https://mqqapi.reader.qq.com/mqq/v1/bookShelfInit`,
558-
headers: JSON.parse(qqreadheaderVal),
586+
headers: JSON.parse(qqreadtimeheaderVal),
559587
};
560588
$.get(toqqreadwktimeurl, (error, response, data) => {
561589
if (logs) $.log(`${jsname}, 阅读时长: ${data}`);
@@ -573,7 +601,7 @@ function qqreadpick() {
573601
return new Promise((resolve, reject) => {
574602
const toqqreadpickurl = {
575603
url: `https://mqqapi.reader.qq.com/mqq/pickPackageInit`,
576-
headers: JSON.parse(qqreadheaderVal),
604+
headers: JSON.parse(qqreadtimeheaderVal),
577605
};
578606
if (wktime.data.readTime >= wktimess && wktime.data.readTime <= 1250) {
579607
$.get(toqqreadpickurl, (error, response, data) => {
@@ -596,7 +624,7 @@ function qqreadpick() {
596624
];
597625
const toqqreadPackageurl = {
598626
url: `https://mqqapi.reader.qq.com/mqq/pickPackage?readTime=${pickid}`,
599-
headers: JSON.parse(qqreadheaderVal),
627+
headers: JSON.parse(qqreadtimeheaderVal),
600628
timeout: 60000,
601629
};
602630
$.get(toqqreadPackageurl, (error, response, data) => {

0 commit comments

Comments
 (0)