koishi-plugin-wordle-game 1.4.0 → 1.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.d.ts +1 -1
- package/lib/index.js +65 -2
- package/package.json +1 -1
- package/readme.md +2 -1
package/lib/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export declare const inject: {
|
|
|
4
4
|
optional: string[];
|
|
5
5
|
};
|
|
6
6
|
export declare const name = "wordle-game";
|
|
7
|
-
export declare const usage = "## \uD83C\uDFA3 \u4F7F\u7528\n\n- \u542F\u52A8\u5FC5\u8981\u7684\u670D\u52A1\u3002\u60A8\u9700\u8981\u542F\u7528 `monetary`\uFF0C`database` \u548C `puppeteer` \u63D2\u4EF6\uFF0C\u4EE5\u5B9E\u73B0\u8D27\u5E01\u7CFB\u7EDF\uFF0C\u6570\u636E\u5B58\u50A8\u548C\u56FE\u7247\u751F\u6210\u7684\u529F\u80FD\u3002\n- \u5EFA\u8BAE\u81EA\u884C\u6DFB\u52A0\u6307\u4EE4\u522B\u540D\uFF0C\u4EE5\u65B9\u4FBF\u60A8\u548C\u60A8\u7684\u7528\u6237\u4F7F\u7528\u3002\n- \u4EAB\u53D7\u731C\u5355\u8BCD\u6E38\u620F\u5427\uFF01\uD83D\uDE0A\n\n## \uD83C\uDFB3 \u6E38\u620F\u6307\u4EE4\n\n\u4EE5\u4E0B\u662F\u8BE5\u63D2\u4EF6\u63D0\u4F9B\u7684\u6307\u4EE4\u5217\u8868:\n\n### \u6E38\u620F\u64CD\u4F5C\n\n- `wordleGame.\u52A0\u5165 [money:number]` - \u52A0\u5165\u6E38\u620F\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u6295\u5165\u7684\u8D27\u5E01\u6570\u989D\u3002\n- `wordleGame.\u9000\u51FA` - \u9000\u51FA\u6E38\u620F\uFF0C\u53EA\u80FD\u5728\u6E38\u620F\u672A\u5F00\u59CB\u65F6\u4F7F\u7528\u3002\n- `wordleGame.\u7ED3\u675F` - \u7ED3\u675F\u6E38\u620F\uFF0C\u53EA\u80FD\u5728\u6E38\u620F\u5DF2\u5F00\u59CB\u65F6\u4F7F\u7528\u3002\n\n### \u6E38\u620F\u6A21\u5F0F\n\n- `wordleGame.\u5F00\u59CB [guessWordLength:number]`\n - \u5F00\u59CB\u6E38\u620F\u5F15\u5BFC\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u731C\u5355\u8BCD\u7684\u957F\u5EA6\u3002\n\n- `wordleGame.\u5F00\u59CB.\u7ECF\u5178`\n - \u5F00\u59CB\u7ECF\u5178\u731C\u5355\u8BCD\u6E38\u620F\uFF0C\u9700\u8981\u6295\u5165\u8D27\u5E01\uFF0C\u8D62\u4E86\u6709\u5956\u52B1\u3002\n\n- `wordleGame.\u5F00\u59CB.CET4/6/GMAT/GRE/IELTS/SAT/TOEFL/\u8003\u7814/\u4E13\u516B/\u4E13\u56DB/ALL [guessWordLength:number]`\n - \u5F00\u59CB\u731C\u4E0D\u540C\u8003\u8BD5/\u7C7B\u522B\u7684\u5355\u8BCD\u6E38\u620F\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u731C\u5355\u8BCD\u7684\u957F\u5EA6\u3002\n - `--hard`\n - \u56F0\u96BE\u6A21\u5F0F\uFF0C\u6240\u6709\u900F\u9732\u7684\u4FE1\u606F\u5FC5\u987B\u5728\u4EE5\u540E\u7684\u731C\u6D4B\u4E2D\u4F7F\u7528\u3002\n - `--absurd`\n - \u8352\u8C2C/\u53D8\u6001\u6A21\u5F0F\uFF0CAI\u5C06\u5C3D\u91CF\u907F\u514D\u7ED9\u51FA\u7B54\u6848\uFF0C\u6BCF\u6B21\u731C\u6D4B\u65F6\u90FD\u4F1A\u5C3D\u53EF\u80FD\u5C11\u5730\u900F\u9732\u4FE1\u606F\uFF0C\u751A\u81F3\u53EF\u80FD\u66F4\u6362\u79D8\u5BC6\u8BCD\u3002\n - \u5728\u8FD9\u79CD\u6A21\u5F0F\u4E0B\uFF0C\u4F60\u5C06\u9762\u5BF9\u4E00\u4E2A\u6781\u5177\u6311\u6218\u6027\u7684\u5BF9\u624B\u3002\n - [\u5982\u4F55\u73A9\uFF1F](https://qntm.org/absurdle)\n - `--challenge`\n - \u8352\u8C2C/\u53D8\u6001\u6311\u6218\u6A21\u5F0F\uFF0C\u8981\u6C42\u4F60\u4ECE\u4E00\u4E2A\u7ED9\u5B9A\u7684\u76EE\u6807\u8BCD\u51FA\u53D1\uFF0C\u901A\u8FC7\u67D0\u79CD\u65B9\u5F0F\u4F7F\u5176\u53D8\u6210\u79D8\u5BC6\u8BCD\u3002\n - \u4EC5\u5EFA\u8BAE\u9AD8\u7EA7\u73A9\u5BB6\u5C1D\u8BD5\u3002\n - [\u5982\u4F55\u73A9\uFF1F](https://qntm.org/challenge)\n - `--wordles <value:number>`\n - \u540C\u65F6\u731C\u6D4B\u591A\u4E2A\u5355\u8BCD\uFF0C\u9ED8\u8BA4\u8303\u56F4\u4E3A 1 ~ 4\uFF0C\u53EF\u81EA\u5B9A\u4E49\u3002\n\n> Tip\uFF1A\u53EF\u4EE5\u540C\u65F6\u542F\u7528\u56F0\u96BE\u6A21\u5F0F\u548C\u53D8\u6001\u6A21\u5F0F\uFF0C\u4E14\u7ECF\u5178\u6A21\u5F0F\u4E5F\u540C\u6837\u9002\u7528\u3002\n\n### \u6E38\u620F\u64CD\u4F5C\n\n- `wordleGame.\u731C [inputWord:text]` - \u731C\u5355\u8BCD\uFF0C\u53C2\u6570\u4E3A\u8F93\u5165\u7684\u5355\u8BCD\u3002\n - `-r`\n - \u968F\u673A\u4E00\u4E2A\u5355\u8BCD\u3002\n- `wordleGame.\u67E5\u8BE2\u8FDB\u5EA6` - \u67E5\u8BE2\u5F53\u524D\u6E38\u620F\u8FDB\u5EA6\u3002\n\n### \u6570\u636E\u67E5\u8BE2\n\n- `wordleGame.\u67E5\u8BE2\u5355\u8BCD [targetWord:text]` - \u5728 ALL \u8BCD\u5E93\u4E2D\u67E5\u8BE2\u5355\u8BCD\u4FE1\u606F\uFF08\u7FFB\u8BD1\uFF09\u3002\n- `wordleGame.\u67E5\u627E\u5355\u8BCD [targetWord:text]` - \u5728 WordWord \u4E2D\u67E5\u8BE2\u5355\u8BCD\u4FE1\u606F\uFF08\u82F1\u6587\u5B9A\u4E49\uFF09\u3002\n- `wordleGame.\u67E5\u8BE2\u73A9\u5BB6\u8BB0\u5F55 [targetUser:text]` - \u67E5\u8BE2\u73A9\u5BB6\u8BB0\u5F55\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u76EE\u6807\u73A9\u5BB6\u7684 at \u4FE1\u606F\u3002\n- `wordleGame.\u6392\u884C\u699C [number:number]` - \u67E5\u770B\u6392\u884C\u699C\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u6392\u884C\u699C\u7684\u4EBA\u6570\u3002\n- `wordleGame.\u6392\u884C\u699C.\u635F\u76CA/\u603B.\u80DC\u573A/\u603B.\u8F93\u573A/\u7ECF\u5178/CET4/CET6/GMAT/GRE/IELTS/SAT/TOEFL/\u8003\u7814/\u4E13\u516B/\u4E13\u56DB/ALL.\u80DC\u573A/\u8F93\u573A/\u6700\u5FEB\u7528\u65F6 [number:number]` -\n \u67E5\u770B\u4E0D\u540C\u6A21\u5F0F\u7684\u73A9\u5BB6\u6392\u884C\u699C\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u6392\u884C\u699C\u7684\u4EBA\u6570\u3002";
|
|
7
|
+
export declare const usage = "## \uD83C\uDFA3 \u4F7F\u7528\n\n- \u542F\u52A8\u5FC5\u8981\u7684\u670D\u52A1\u3002\u60A8\u9700\u8981\u542F\u7528 `monetary`\uFF0C`database` \u548C `puppeteer` \u63D2\u4EF6\uFF0C\u4EE5\u5B9E\u73B0\u8D27\u5E01\u7CFB\u7EDF\uFF0C\u6570\u636E\u5B58\u50A8\u548C\u56FE\u7247\u751F\u6210\u7684\u529F\u80FD\u3002\n- \u5EFA\u8BAE\u81EA\u884C\u6DFB\u52A0\u6307\u4EE4\u522B\u540D\uFF0C\u4EE5\u65B9\u4FBF\u60A8\u548C\u60A8\u7684\u7528\u6237\u4F7F\u7528\u3002\n- \u4EAB\u53D7\u731C\u5355\u8BCD\u6E38\u620F\u5427\uFF01\uD83D\uDE0A\n\n## \uD83C\uDFB3 \u6E38\u620F\u6307\u4EE4\n\n\u4EE5\u4E0B\u662F\u8BE5\u63D2\u4EF6\u63D0\u4F9B\u7684\u6307\u4EE4\u5217\u8868:\n\n### \u6E38\u620F\u64CD\u4F5C\n\n- `wordleGame.\u52A0\u5165 [money:number]` - \u52A0\u5165\u6E38\u620F\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u6295\u5165\u7684\u8D27\u5E01\u6570\u989D\u3002\n- `wordleGame.\u9000\u51FA` - \u9000\u51FA\u6E38\u620F\uFF0C\u53EA\u80FD\u5728\u6E38\u620F\u672A\u5F00\u59CB\u65F6\u4F7F\u7528\u3002\n- `wordleGame.\u7ED3\u675F` - \u7ED3\u675F\u6E38\u620F\uFF0C\u53EA\u80FD\u5728\u6E38\u620F\u5DF2\u5F00\u59CB\u65F6\u4F7F\u7528\u3002\n\n### \u6E38\u620F\u6A21\u5F0F\n\n- `wordleGame.\u5F00\u59CB [guessWordLength:number]`\n - \u5F00\u59CB\u6E38\u620F\u5F15\u5BFC\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u731C\u5355\u8BCD\u7684\u957F\u5EA6\u3002\n\n- `wordleGame.\u5F00\u59CB.\u7ECF\u5178`\n - \u5F00\u59CB\u7ECF\u5178\u731C\u5355\u8BCD\u6E38\u620F\uFF0C\u9700\u8981\u6295\u5165\u8D27\u5E01\uFF0C\u8D62\u4E86\u6709\u5956\u52B1\u3002\n\n- `wordleGame.\u5F00\u59CB.CET4/6/GMAT/GRE/IELTS/SAT/TOEFL/\u8003\u7814/\u4E13\u516B/\u4E13\u56DB/ALL [guessWordLength:number]`\n - \u5F00\u59CB\u731C\u4E0D\u540C\u8003\u8BD5/\u7C7B\u522B\u7684\u5355\u8BCD\u6E38\u620F\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u731C\u5355\u8BCD\u7684\u957F\u5EA6\u3002\n - `--hard`\n - \u56F0\u96BE\u6A21\u5F0F\uFF0C\u6240\u6709\u900F\u9732\u7684\u4FE1\u606F\u5FC5\u987B\u5728\u4EE5\u540E\u7684\u731C\u6D4B\u4E2D\u4F7F\u7528\u3002\n - `--absurd`\n - \u8352\u8C2C/\u53D8\u6001\u6A21\u5F0F\uFF0CAI\u5C06\u5C3D\u91CF\u907F\u514D\u7ED9\u51FA\u7B54\u6848\uFF0C\u6BCF\u6B21\u731C\u6D4B\u65F6\u90FD\u4F1A\u5C3D\u53EF\u80FD\u5C11\u5730\u900F\u9732\u4FE1\u606F\uFF0C\u751A\u81F3\u53EF\u80FD\u66F4\u6362\u79D8\u5BC6\u8BCD\u3002\n - \u5728\u8FD9\u79CD\u6A21\u5F0F\u4E0B\uFF0C\u4F60\u5C06\u9762\u5BF9\u4E00\u4E2A\u6781\u5177\u6311\u6218\u6027\u7684\u5BF9\u624B\u3002\n - [\u5982\u4F55\u73A9\uFF1F](https://qntm.org/absurdle)\n - `--challenge`\n - \u8352\u8C2C/\u53D8\u6001\u6311\u6218\u6A21\u5F0F\uFF0C\u8981\u6C42\u4F60\u4ECE\u4E00\u4E2A\u7ED9\u5B9A\u7684\u76EE\u6807\u8BCD\u51FA\u53D1\uFF0C\u901A\u8FC7\u67D0\u79CD\u65B9\u5F0F\u4F7F\u5176\u53D8\u6210\u79D8\u5BC6\u8BCD\u3002\n - \u4EC5\u5EFA\u8BAE\u9AD8\u7EA7\u73A9\u5BB6\u5C1D\u8BD5\u3002\n - [\u5982\u4F55\u73A9\uFF1F](https://qntm.org/challenge)\n - `--wordles <value:number>`\n - \u540C\u65F6\u731C\u6D4B\u591A\u4E2A\u5355\u8BCD\uFF0C\u9ED8\u8BA4\u8303\u56F4\u4E3A 1 ~ 4\uFF0C\u53EF\u81EA\u5B9A\u4E49\u3002\n\n> Tip\uFF1A\u53EF\u4EE5\u540C\u65F6\u542F\u7528\u56F0\u96BE\u6A21\u5F0F\u548C\u53D8\u6001\u6A21\u5F0F\uFF0C\u4E14\u7ECF\u5178\u6A21\u5F0F\u4E5F\u540C\u6837\u9002\u7528\u3002\n\n### \u6E38\u620F\u64CD\u4F5C\n\n- `wordleGame.\u731C [inputWord:text]` - \u731C\u5355\u8BCD\uFF0C\u53C2\u6570\u4E3A\u8F93\u5165\u7684\u5355\u8BCD\u3002\n - `-r`\n - \u968F\u673A\u4E00\u4E2A\u5355\u8BCD\u3002\n- `wordleGame.\u67E5\u8BE2\u8FDB\u5EA6` - \u67E5\u8BE2\u5F53\u524D\u6E38\u620F\u8FDB\u5EA6\u3002\n\n### \u6570\u636E\u67E5\u8BE2\n\n- `wordleGame.\u67E5\u8BE2\u5355\u8BCD [targetWord:text]` - \u5728 ALL \u8BCD\u5E93\u4E2D\u67E5\u8BE2\u5355\u8BCD\u4FE1\u606F\uFF08\u7FFB\u8BD1\uFF09\u3002\n- `wordleGame.\u67E5\u627E\u5355\u8BCD [targetWord:text]` - \u5728 [WordWord](https://wordword.org/) \u4E2D\u67E5\u8BE2\u5355\u8BCD\u4FE1\u606F\uFF08\u82F1\u6587\u5B9A\u4E49\uFF09\u3002\n- `wordleGame.wordleGame.\u5355\u8BCD\u67E5\u627E\u5668` - \u4F7F\u7528 [WordFinder](https://wordword.org/) \u67E5\u627E\u5339\u914D\u7684\u5355\u8BCD\u3002\n- `wordleGame.\u67E5\u8BE2\u73A9\u5BB6\u8BB0\u5F55 [targetUser:text]` - \u67E5\u8BE2\u73A9\u5BB6\u8BB0\u5F55\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u76EE\u6807\u73A9\u5BB6\u7684 at \u4FE1\u606F\u3002\n- `wordleGame.\u6392\u884C\u699C [number:number]` - \u67E5\u770B\u6392\u884C\u699C\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u6392\u884C\u699C\u7684\u4EBA\u6570\u3002\n- `wordleGame.\u6392\u884C\u699C.\u635F\u76CA/\u603B.\u80DC\u573A/\u603B.\u8F93\u573A/\u7ECF\u5178/CET4/CET6/GMAT/GRE/IELTS/SAT/TOEFL/\u8003\u7814/\u4E13\u516B/\u4E13\u56DB/ALL.\u80DC\u573A/\u8F93\u573A/\u6700\u5FEB\u7528\u65F6 [number:number]` -\n \u67E5\u770B\u4E0D\u540C\u6A21\u5F0F\u7684\u73A9\u5BB6\u6392\u884C\u699C\uFF0C\u53EF\u9009\u53C2\u6570\u4E3A\u6392\u884C\u699C\u7684\u4EBA\u6570\u3002";
|
|
8
8
|
export interface Config {
|
|
9
9
|
isDarkThemeEnabled: boolean;
|
|
10
10
|
isHighContrastThemeEnabled: boolean;
|
package/lib/index.js
CHANGED
|
@@ -26,6 +26,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
27
|
exports.apply = exports.Config = exports.usage = exports.name = exports.inject = void 0;
|
|
28
28
|
const koishi_1 = require("koishi");
|
|
29
|
+
const cheerio_1 = require("cheerio");
|
|
29
30
|
const path = __importStar(require("path"));
|
|
30
31
|
const fs = __importStar(require("fs"));
|
|
31
32
|
exports.inject = {
|
|
@@ -84,7 +85,8 @@ exports.usage = `## 🎣 使用
|
|
|
84
85
|
### 数据查询
|
|
85
86
|
|
|
86
87
|
- \`wordleGame.查询单词 [targetWord:text]\` - 在 ALL 词库中查询单词信息(翻译)。
|
|
87
|
-
- \`wordleGame.查找单词 [targetWord:text]\` - 在 WordWord 中查询单词信息(英文定义)。
|
|
88
|
+
- \`wordleGame.查找单词 [targetWord:text]\` - 在 [WordWord](https://wordword.org/) 中查询单词信息(英文定义)。
|
|
89
|
+
- \`wordleGame.wordleGame.单词查找器\` - 使用 [WordFinder](https://wordword.org/) 查找匹配的单词。
|
|
88
90
|
- \`wordleGame.查询玩家记录 [targetUser:text]\` - 查询玩家记录,可选参数为目标玩家的 at 信息。
|
|
89
91
|
- \`wordleGame.排行榜 [number:number]\` - 查看排行榜,可选参数为排行榜的人数。
|
|
90
92
|
- \`wordleGame.排行榜.损益/总.胜场/总.输场/经典/CET4/CET6/GMAT/GRE/IELTS/SAT/TOEFL/考研/专八/专四/ALL.胜场/输场/最快用时 [number:number]\` -
|
|
@@ -938,12 +940,48 @@ ${generateStatsInfo(stats, fastestGuessTime)}
|
|
|
938
940
|
.then((responseData) => {
|
|
939
941
|
const definitions = responseData.word.definitions;
|
|
940
942
|
const serializedDefinitions = serializeDefinitions(definitions);
|
|
941
|
-
return sendMessage(session, `${capitalizeFirstLetter(targetWord)} Definitions: \n
|
|
943
|
+
return sendMessage(session, `${capitalizeFirstLetter(targetWord)} Definitions: \n${serializedDefinitions}`);
|
|
942
944
|
})
|
|
943
945
|
.catch((error) => {
|
|
944
946
|
return sendMessage(session, `【@${username}】\n未在WordWord中找到该单词。`);
|
|
945
947
|
});
|
|
946
948
|
});
|
|
949
|
+
// dcczq*
|
|
950
|
+
ctx.command('wordleGame.单词查找器', '使用WordFinder查找匹配的单词')
|
|
951
|
+
.option('wordLength', '-l <length> 指定要搜索的单词长度', { fallback: undefined })
|
|
952
|
+
.option('wordWithThreeWildcards', '-w <word> 搜索带有最多三个通配符字符的单词', { fallback: undefined })
|
|
953
|
+
.option('containingLetters', '-c <letters> 搜索包含特定字母组合的单词', { fallback: undefined })
|
|
954
|
+
.option('containingTheseLetters', '--ct <letters> 搜索只包含指定字母的单词', { fallback: undefined })
|
|
955
|
+
.option('withoutTheseLetters', '--wt <letters> 搜索不包含特定字母的单词', { fallback: undefined })
|
|
956
|
+
.option('startingWithTheseLetters', '--sw <letters> 搜索以特定字母开头的单词', { fallback: undefined })
|
|
957
|
+
.option('endingWithTheseLetters', '--ew <letters> 搜索以特定字母结尾的单词', { fallback: undefined })
|
|
958
|
+
.action(async ({ session, options }) => {
|
|
959
|
+
const { wordLength, wordWithThreeWildcards, containingLetters, containingTheseLetters, withoutTheseLetters, startingWithTheseLetters, endingWithTheseLetters } = options;
|
|
960
|
+
const noOptionsSpecified = !wordLength &&
|
|
961
|
+
!wordWithThreeWildcards &&
|
|
962
|
+
!containingLetters &&
|
|
963
|
+
!containingTheseLetters &&
|
|
964
|
+
!withoutTheseLetters &&
|
|
965
|
+
!startingWithTheseLetters &&
|
|
966
|
+
!endingWithTheseLetters;
|
|
967
|
+
if (noOptionsSpecified) {
|
|
968
|
+
const chineseTutorial = "欢迎使用单词查找器!\n你可以使用以下选项来搜索匹配的单词:\n- 使用 -l <length> 指定要搜索的单词长度\n- 使用 -w <word> 搜索带有最多三个通配符字符的单词\n- 使用 -c <letters> 搜索包含特定字母组合的单词\n- 使用 --ct <letters> 搜索只包含指定字母的单词\n- 使用 --wt <letters> 搜索不包含特定字母的单词\n- 使用 --sw <letters> 搜索以特定字母开头的单词\n- 使用 --ew <letters> 搜索以特定字母结尾的单词";
|
|
969
|
+
return sendMessage(session, chineseTutorial);
|
|
970
|
+
}
|
|
971
|
+
const params = {
|
|
972
|
+
wordLength: wordLength ? `${wordLength}-letter-words` : '',
|
|
973
|
+
wordWithThreeWildcards: wordWithThreeWildcards ? `out-of-${wordWithThreeWildcards}` : '',
|
|
974
|
+
containingLetters: containingLetters ? `containing-${containingLetters}` : '',
|
|
975
|
+
containingTheseLetters: containingTheseLetters ? `with-${containingTheseLetters}` : '',
|
|
976
|
+
withoutTheseLetters: withoutTheseLetters ? `without-${withoutTheseLetters}` : '',
|
|
977
|
+
startingWithTheseLetters: startingWithTheseLetters ? `starting-with-${startingWithTheseLetters}` : '',
|
|
978
|
+
endingWithTheseLetters: endingWithTheseLetters ? `ending-with-${endingWithTheseLetters}` : ''
|
|
979
|
+
};
|
|
980
|
+
const queryParams = Object.values(params).filter(param => param).join('-');
|
|
981
|
+
const url = `https://wordword.org/search/${queryParams}`;
|
|
982
|
+
const result = await fetchAndParseWords(url);
|
|
983
|
+
return sendMessage(session, `${result}`);
|
|
984
|
+
});
|
|
947
985
|
// wordleGame.查询进度 jd* cxjd*
|
|
948
986
|
ctx.command('wordleGame.查询进度', '查询当前游戏进度')
|
|
949
987
|
.action(async ({ session }) => {
|
|
@@ -1528,6 +1566,31 @@ ${rankType3.map((type, index) => `${index + 1}. ${type}`).join('\n')}
|
|
|
1528
1566
|
}
|
|
1529
1567
|
// apply
|
|
1530
1568
|
// hs*
|
|
1569
|
+
async function fetchAndParseWords(url) {
|
|
1570
|
+
try {
|
|
1571
|
+
const response = await fetch(url);
|
|
1572
|
+
const html = await response.text();
|
|
1573
|
+
const $ = (0, cheerio_1.load)(html);
|
|
1574
|
+
const wordGroups = $('.word-group');
|
|
1575
|
+
let finalResult = '';
|
|
1576
|
+
if (wordGroups.length === 0) {
|
|
1577
|
+
finalResult = '未找到。';
|
|
1578
|
+
}
|
|
1579
|
+
else {
|
|
1580
|
+
wordGroups.each((_, element) => {
|
|
1581
|
+
const title = $(element).find('.word-group__title').text();
|
|
1582
|
+
const words = $(element).find('.word-group__inner .word').map((_, el) => $(el).contents().filter(function () {
|
|
1583
|
+
return this.nodeType === 3;
|
|
1584
|
+
}).text().trim()).get();
|
|
1585
|
+
finalResult += `${title}:\n${words.join(', ')}\n\n`;
|
|
1586
|
+
});
|
|
1587
|
+
}
|
|
1588
|
+
return finalResult;
|
|
1589
|
+
}
|
|
1590
|
+
catch (error) {
|
|
1591
|
+
logger.error('发生错误:', error);
|
|
1592
|
+
}
|
|
1593
|
+
}
|
|
1531
1594
|
function capitalizeFirstLetter(word) {
|
|
1532
1595
|
return word.charAt(0).toUpperCase() + word.slice(1);
|
|
1533
1596
|
}
|
package/package.json
CHANGED
package/readme.md
CHANGED
|
@@ -118,7 +118,8 @@ npm install koishi-plugin-wordle-game
|
|
|
118
118
|
### 数据查询
|
|
119
119
|
|
|
120
120
|
- `wordleGame.查询单词 [targetWord:text]` - 在 ALL 词库中查询单词信息(翻译)。
|
|
121
|
-
- `wordleGame.查找单词 [targetWord:text]` - 在 WordWord 中查询单词信息(英文定义)。
|
|
121
|
+
- `wordleGame.查找单词 [targetWord:text]` - 在 [WordWord](https://wordword.org/) 中查询单词信息(英文定义)。
|
|
122
|
+
- `wordleGame.wordleGame.单词查找器` - 使用 [WordFinder](https://wordword.org/) 查找匹配的单词。
|
|
122
123
|
- `wordleGame.查询玩家记录 [targetUser:text]` - 查询玩家记录,可选参数为目标玩家的 at 信息。
|
|
123
124
|
- `wordleGame.排行榜 [number:number]` - 查看排行榜,可选参数为排行榜的人数。
|
|
124
125
|
- `wordleGame.排行榜.损益/总.胜场/总.输场/经典/CET4/CET6/GMAT/GRE/IELTS/SAT/TOEFL/考研/专八/专四/ALL.胜场/输场/最快用时 [number:number]` -
|