From bb5caffb7372aa570a11de5dae4b02336c80de9a Mon Sep 17 00:00:00 2001 From: RrOrange <542716863@qq.com> Date: Fri, 7 Apr 2023 21:53:00 +0800 Subject: [PATCH] =?UTF-8?q?=E2=86=A9=20revert:=20=E9=80=80=E5=9B=9E?= =?UTF-8?q?=E5=AE=89=E5=85=A8=E6=A3=80=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/query.js | 127 ++++++++++++++++++++++---------------------------- 1 file changed, 55 insertions(+), 72 deletions(-) diff --git a/apps/query.js b/apps/query.js index 880da66..3503cad 100644 --- a/apps/query.js +++ b/apps/query.js @@ -54,7 +54,7 @@ export class query extends plugin { { reg: "^#竹白(.*)", fnc: "zhubaiSearch", - }, + } ], }); } @@ -63,9 +63,7 @@ export class query extends plugin { const keyword = e.msg.replace("#医药查询", "").trim(); const url = `https://api2.dayi.org.cn/api/search2?keyword=${keyword}&pageNo=1&pageSize=10`; try { - const res = await fetch(url) - .then(resp => resp.json()) - .then(resp => resp.list); + const res = await fetch(url).then(resp => resp.json()).then(resp => resp.list); const promises = res.map(async element => { const title = this.removeTag(element.title); const template = `${title}\n标签:${element.secondTitle}\n介绍:${element.introduction}`; @@ -87,14 +85,14 @@ export class query extends plugin { return { message: { type: "text", - text: template, + text: template }, nickname: Bot.nickname, - user_id: Bot.user_id, + user_id: Bot.user_id }; }); const msg = await Promise.all(promises); - e.reply(await Bot.makeForwardMsg(msg)); + e.reply(await Bot.makeForwardMsg(msg)) } catch (err) { logger.error(err); } @@ -104,9 +102,7 @@ export class query extends plugin { async cat(e) { const [shibes, cats] = await Promise.allSettled([ fetch(`https://shibe.online/api/cats?count=${CAT_LIMIT}`).then(data => data.json()), - fetch(`https://api.thecatapi.com/v1/images/search?limit=${CAT_LIMIT}`).then(data => - data.json(), - ), + fetch(`https://api.thecatapi.com/v1/images/search?limit=${CAT_LIMIT}`).then(data => data.json()), ]); const shibeUrls = shibes.status === "fulfilled" ? shibes.value : []; @@ -128,27 +124,25 @@ export class query extends plugin { // 接口 const urls = [ "https://www.ghxi.com/ghapi?type=query&n=pc", - "https://www.ghxi.com/ghapi?type=query&n=and", + "https://www.ghxi.com/ghapi?type=query&n=and" ]; // 一起请求 const promises = urls.map(url => fetch(url) .then(resp => resp.json()) - .catch(err => logger.error(err)), + .catch(err => logger.error(err)) ); const results = await Promise.allSettled(promises); const msg = results - .filter(result => result.status === "fulfilled") // 只保留已解决的 Promise - .flatMap(result => - result.value.data.list.map(element => { - const template = `推荐软件:${element.title}\n地址:${element.url}\n`; - return { - message: { type: "text", text: template }, - nickname: e.sender.card || e.user_id, - user_id: e.user_id, - }; - }), - ); + .filter(result => result.status === 'fulfilled') // 只保留已解决的 Promise + .flatMap(result => result.value.data.list.map(element => { + const template = `推荐软件:${element.title}\n地址:${element.url}\n`; + return { + message: { type: "text", text: template }, + nickname: e.sender.card || e.user_id, + user_id: e.user_id + }; + })); // 异步操作 e.reply(await Bot.makeForwardMsg(msg)); @@ -163,9 +157,7 @@ export class query extends plugin { .then(resp => resp.imgurl); const results = await Promise.allSettled([p1, p2]); - const images = results - .filter(result => result.status === "fulfilled") - .map(result => result.value); + const images = results.filter(result => result.status === "fulfilled").map(result => result.value); for (const img of images) { e.reply(segment.image(img)); @@ -274,45 +266,43 @@ export class query extends plugin { } async cospro(e) { - let [res1, res2] = ( - await Promise.allSettled([ - fetch("https://imgapi.cn/cos2.php?return=jsonpro").then(resp => resp.json()), - fetch("https://imgapi.cn/cos.php?return=jsonpro").then(resp => resp.json()), - ]) - ) - .filter(result => result.status === "fulfilled") - .map(result => result.value); - let req = [...res1.imgurls, ...res2.imgurls]; + let [res1, res2] = (await Promise.allSettled([ + fetch("https://imgapi.cn/cos2.php?return=jsonpro").then(resp => resp.json()), + fetch("https://imgapi.cn/cos.php?return=jsonpro").then(resp => resp.json()) + ])) + .filter(result => result.status === "fulfilled").map(result => result.value); + let req = [ + ...res1.imgurls, + ...res2.imgurls + ]; e.reply("哪天克火掉一定是在这个群里面..."); let images = req.map(item => ({ message: segment.image(encodeURI(item)), nickname: this.e.sender.card || this.e.user_id, user_id: this.e.user_id, })); - e.reply(await Bot.makeForwardMsg(images)); + e.reply(await Bot.makeForwardMsg(images)) return true; } // 搜书 async searchBook(e) { - let keyword = e.msg.replace(/#|搜书/g).trim(); + let keyword = e.msg.replace(/#|搜书/g, "").trim(); if (!keyword) { e.reply("请输入书名,例如:#搜书 非暴力沟通"); return true; } - // 对输入的书名进行安全过滤 - const safeKeyword = keyword.replace(/[^\w\s]/g); - const replyMessage = async msg => { + const replyMessage = async (msg) => { if (msg && msg.length > 0) { await e.reply(await Bot.makeForwardMsg(msg)); } }; - // const [zHelper, yiBook] = await Promise.all([getZHelper(e, keyword), getYiBook(e, keyword)]); + const [/*zHelper, yiBook, */zBook] = await Promise.all([/*getZHelper(e, keyword), getYiBook(e, keyword), */getZBook(e, keyword)]); + // replyMessage(yiBook); - const zBook = await getZBook(e, safeKeyword); - await replyMessage(zBook); + replyMessage(zBook); /*if (zHelper && zHelper.length > 0) { await replyMessage(zHelper); @@ -327,6 +317,7 @@ export class query extends plugin { return true; } + // 通过id搜书 async searchBookById(e) { let keyword = e.msg.replace(/#bookid/, "").trim(); @@ -379,35 +370,27 @@ export class query extends plugin { e.reply("请输入想了解的内容,例如:#竹白 javascript"); return true; } - await axios - .post( - "https://open.zhubai.wiki/a/zb/s/ep/", - { - content: 1, - keyword: keyword, - }, - { - headers: { - "User-Agent": - "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Mobile Safari/537.36", - }, - }, - ) - .then(async resp => { - const res = resp.data.data; - const content = await res.map(item => { - const { pn, pa, zn, lu, pu, pq, aa, hl } = item; - const template = `标题:${pn}\n${pa}\n期刊:${zn}\n发布日期距今:${lu}\n链接1:${pu}\n链接2:${pq}\n\n 大致描述:${hl - .join("\n") - .replace(/<\/?font[^>]*>/g, "")}`; - return { - message: [segment.image(aa), template], - nickname: this.e.sender.card || this.e.user_id, - user_id: this.e.user_id, - }; - }); - e.reply(await Bot.makeForwardMsg(content)); - }); + await axios.post("https://open.zhubai.wiki/a/zb/s/ep/", { + "content": 1, + "keyword": keyword + }, { + headers: { + "User-Agent": + "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Mobile Safari/537.36", + } + }).then(async resp => { + const res = resp.data.data; + const content = await res.map(item => { + const {pn, pa, zn, lu, pu, pq, aa, hl } = item; + const template = `标题:${pn}\n${pa}\n期刊:${zn}\n发布日期距今:${lu}\n链接1:${pu}\n链接2:${pq}\n\n 大致描述:${hl.join("\n").replace(/<\/?font[^>]*>/g, '')}` + return { + message: [segment.image(aa), template], + nickname: this.e.sender.card || this.e.user_id, + user_id: this.e.user_id, + } + }) + e.reply(await Bot.makeForwardMsg(content)); + }) return true; }