diff --git a/apps/tools.js b/apps/tools.js index f73d500..6bd7d08 100644 --- a/apps/tools.js +++ b/apps/tools.js @@ -70,6 +70,7 @@ import { mid2id } from "../utils/weibo.js"; import { LagrangeAdapter } from "../utils/lagrange-adapter.js"; import path from "path"; import { OpenaiBuilder } from "../utils/openai-builder.js"; +import { contentEstimator } from "../utils/link-share-summary-util.js"; export class tools extends plugin { /** @@ -1562,7 +1563,7 @@ export class tools extends plugin { e.reply(`没有配置 Kimi,无法为您总结!${HELP_DOC}`) return true; } - const { name, summaryLink } = this.contentEstimator(e.msg); + const { name, summaryLink } = contentEstimator(e.msg); const builder = await new OpenaiBuilder() .setBaseURL(this.aiBaseURL) .setApiKey(this.aiApiKey) @@ -1579,30 +1580,6 @@ export class tools extends plugin { return true; } - /** - * 内容评估器 - * @link {weixin} - * @param link 链接 - */ - contentEstimator(link) { - const wxReg = /(?:https?:\/\/)?mp\.weixin\.qq\.com\/[A-Za-z\d._?%&+\-=\/#]*/; - const arxivReg = /(?:https?:\/\/)?arxiv.org\/[a-zA-Z\d._?%&+\-=\/#]*/; - if (wxReg.test(link)) { - return { - name: '微信文章', - summaryLink: wxReg.exec(link)?.[0] - }; - } else if (arxivReg.test(link)) { - return { - name: 'ArXiv论文', - summaryLink: arxivReg.exec(link)?.[0] - }; - } else { - logger.error("[R插件][总结模块] 内容评估出错..."); - throw Error("内容评估出错..."); - } - } - /** * 哔哩哔哩下载 * @param title diff --git a/utils/link-share-summary-util.js b/utils/link-share-summary-util.js new file mode 100644 index 0000000..c33e3a7 --- /dev/null +++ b/utils/link-share-summary-util.js @@ -0,0 +1,29 @@ +/** + * 内容评估器 + * @link {weixin} + * @param link 链接 + */ +export function contentEstimator(link) { + const wxReg = /(?:https?:\/\/)?mp\.weixin\.qq\.com\/[A-Za-z\d._?%&+\-=\/#]*/; + const arxivReg = /(?:https?:\/\/)?arxiv.org\/[a-zA-Z\d._?%&+\-=\/#]*/; + const sspaiReg = /(?:https?:\/\/)?sspai.com\/[a-zA-Z\d._?%&+\-=\/#]*/; + if (wxReg.test(link)) { + return { + name: '微信文章', + summaryLink: wxReg.exec(link)?.[0] + }; + } else if (arxivReg.test(link)) { + return { + name: 'ArXiv论文', + summaryLink: arxivReg.exec(link)?.[0] + }; + } else if (sspaiReg.test(link)) { + return { + name: '少数派', + summaryLink: sspaiReg.execSync(link)?.[0] + } + } else { + logger.error("[R插件][总结模块] 内容评估出错..."); + throw Error("内容评估出错..."); + } +}