|
@@ -41,6 +41,7 @@ const https = require("node:https");
|
|
const {OpenCC} = require("opencc");
|
|
const {OpenCC} = require("opencc");
|
|
const {HttpsProxyAgent} = require("https-proxy-agent");
|
|
const {HttpsProxyAgent} = require("https-proxy-agent");
|
|
const sortArray = require("sort-array");
|
|
const sortArray = require("sort-array");
|
|
|
|
+const fetch = require("node-fetch");
|
|
const converters2t = new OpenCC('s2t.json')
|
|
const converters2t = new OpenCC('s2t.json')
|
|
const convertert2s = new OpenCC('t2s.json')
|
|
const convertert2s = new OpenCC('t2s.json')
|
|
app.use(bodyParser.json({"limit": "200mb"}));
|
|
app.use(bodyParser.json({"limit": "200mb"}));
|
|
@@ -285,14 +286,23 @@ app.post('/lyric', async (req, res) => {
|
|
let name = req.body.name
|
|
let name = req.body.name
|
|
let artist = req.body.artist;
|
|
let artist = req.body.artist;
|
|
let album = req.body.albumName;
|
|
let album = req.body.albumName;
|
|
- let lrc = "";
|
|
|
|
|
|
+ let lrc = null;
|
|
await fetchThatShit()
|
|
await fetchThatShit()
|
|
|
|
|
|
async function fetchThatShit() {
|
|
async function fetchThatShit() {
|
|
try {
|
|
try {
|
|
- lrc = await (await fetch(`http://localhost:28883/api/v1/lyrics/single?title=${convertert2s.convertSync(name)}&album=${convertert2s.convertSync(album)}&artist=${convertert2s.convertSync(artist)}`, {
|
|
|
|
|
|
+ let fetched = (await (await fetch(`http://localhost:28883/api/v1/lyrics/single?title=${convertert2s.convertSync(name)}&album=${convertert2s.convertSync(album)}&artist=${convertert2s.convertSync(artist)}`, {
|
|
agent: new HttpsProxyAgent("http://localhost:7890")
|
|
agent: new HttpsProxyAgent("http://localhost:7890")
|
|
- })).text()
|
|
|
|
|
|
+ })).json())
|
|
|
|
+ for(let entry of fetched) {
|
|
|
|
+ if(entry.title === converters2t.convertSync(name) || entry.title === convertert2s.convertSync(name) ){
|
|
|
|
+ lrc = entry.lyrics
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if(lrc === null) {
|
|
|
|
+ lrc=fetched[0].lyrics
|
|
|
|
+ }
|
|
|
|
+
|
|
} catch (err) {
|
|
} catch (err) {
|
|
await fetchThatShit()
|
|
await fetchThatShit()
|
|
}
|
|
}
|