Collect authenticated Qinglong scripts batch

This commit is contained in:
Hermes Agent
2026-05-24 03:53:42 +00:00
parent 0d80b33d25
commit 28d62fef03
86 changed files with 18420 additions and 5 deletions

View File

@@ -0,0 +1,136 @@
// # Source: https://github.com/Wenmoux/checkbox/blob/master/scripts/sxmd.js
// # Raw: https://raw.githubusercontent.com/Wenmoux/checkbox/master/scripts/sxmd.js
// # Repo: Wenmoux/checkbox
// # Path: scripts/sxmd.js
// # UploadedAt: 2024-02-09T08:25:50Z
// # SHA256: c843730c6fb10c63ed4eee5118bc7e56d65ff3e180c100b26ab31f8791099339
// # Category: web版/账密
// # Evidence: web/H5关键词 + username/password/login
//
let account = config.sxmd.account;
let password = config.sxmd.password;
const iconv = require("iconv-lite");
const axios = require("axios");
let ck = null;
let formhash = null;
if (config.sxmd.sxmd_host){
SXMD_HOST=config.sxmd.sxmd_host;
}else{
SXMD_HOST="www.txtnovel.vip"
}
let result = "【书香门第】:";
console.log(`\n\n当前书香门第网址为https://${SXMD_HOST}\n请自行核对,如果接下来报错或失败极有可能是网址变了。\n请百度一下最新网址,\n并手动在环境变量内新建sxmd_host内容不带https://\n示例www.txtnovel.pro\n\n`)
var headers = {
Host: `${SXMD_HOST}`,
cookie: " ",
referer: `http://${SXMD_HOST}/member.php?mod=logging&action=login&mobile=2`,
"Content-Type": "application/x-www-form-urlencoded",
"User-Agent": "Mozilla/5.0 (Linux; Android 10; Redmi K30) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.83 Mobile Safari/537.36",
}
function login() {
return new Promise(async (resolve) => {
try {
let loginurl =
`http://${SXMD_HOST}/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=&mobile=2`;
let data = `formhash=&referer=http%3A%2F%2F${SXMD_HOST}%2F&fastloginfield=username&cookietime=2592000&username=${account}&password=${password}&questionid=0&answer=&submit=true`;
let res = await axios.post(loginurl, data, {
headers
}
);
resdata = res.data
if (resdata.match(/欢迎您回来/)) {
result += "登陆成功 ";
console.log("登陆成功");
ckk = res.headers["set-cookie"];
ck = "";
for (i = 0; i < ckk.length; i++) {
ck += ckk[i].split("expires")[0];
}
} else {
console.log("登陆失败");
let message = resdata.match(
/<div id=\"messagetext\">.*?<p>(.+?)<\/p>/s
);
result += "登陆失败 ";
}
} catch (err) {
console.log(err);
}
resolve();
});
}
function getformhash() {
return new Promise(async (resolve) => {
try {
let url = `http://${SXMD_HOST}/plugin.php?id=dsu_paulsign:sign&mobile=yes`;
let res = await axios.get(url, {
headers
});
formhash = res.data.match(
/<input type=\"hidden\" name=\"formhash\" value=\"(.+?)\" \/>/s
)[1];
} catch (err) {
console.log(err);
}
resolve();
});
}
function sign() {
return new Promise(async (resolve) => {
try {
let url = `http://${SXMD_HOST}/plugin.php?id=dsu_paulsign:sign&operation=qiandao&infloat=0&inajax=0&mobile=yes`;
let data = `formhash=${formhash}&qdxq=kx`;
let res = await axios.post(url, data, {
headers
});
let message = res.data.match(/<div id=\"messagetext\">.*?<p>(.+?)<\/p>/s);
if (message) {
result += message[1] + " ";
} else {
result += "签到失败! ";
}
} catch (err) {
console.log(err);
}
resolve();
});
}
function info() {
return new Promise(async (resolve) => {
try {
let url = `http://${SXMD_HOST}/home.php?mod=space&`;
let res = await axios.get(url, {
headers
});
let message = res.data.match(/<li><em>金币<\/em>(.+?) 枚<\/li>/);
if (message) {
result += "金币:" + message[1];
}
} catch (err) {
console.log(err);
}
resolve();
});
}
async function task() {
await login();
headers.cookie = ck;
if (ck) {
await getformhash();
await sign();
await info();
console.log(result);
} else {}
return result;
}
//task();
module.exports = task;