mta-wiki-parser
Version:
Wiki to Discord parser for Multi Theft Auto Wiki: https://wiki.multitheftauto.com/
43 lines (42 loc) • 1.56 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const axios_1 = __importDefault(require("axios"));
class Searcher {
static async search(query, maxResults, userAgent) {
query = encodeURI(query);
const res = await axios_1.default.get('https://wiki.multitheftauto.com/api.php', {
headers: {
'User-Agent': userAgent || 'mtasa-wiki-parser @ https://github.com/AfuSensi/mtasa-wiki-parser',
},
params: {
action: 'query',
format: 'json',
list: 'search',
srenablerewrites: 'true',
srsearch: query,
srlimit: maxResults,
},
});
const results = [];
for (const rawResult of res.data.query.search) {
const result = {
title: rawResult.title,
pageid: rawResult.pageid,
size: rawResult.size,
wordcount: rawResult.wordcount,
url: `https://wiki.multitheftauto.com/wiki/${rawResult.title.replace(/\s+/g, '_')}`,
};
results.push(result);
}
const returnResults = {
query,
hits: res.data.query.searchinfo.totalhits,
results,
};
return returnResults;
}
}
exports.Searcher = Searcher;