Files
yenai-plugin/model/api/funApi/randomSinging.js
2024-03-11 20:18:43 +08:00

23 lines
817 B
JavaScript

import { API_ERROR } from './utils.js'
import _ from 'lodash'
/** 随机唱歌/唱鸭 */
export default async function randomSinging () {
try {
const api = 'https://m.api.singduck.cn/user-piece/SoQJ9cKu61FJ1Vwc7'
let res = await fetch(api).then(res => res.text())
let JSONdara = JSON.parse(res.match(/<script id="__NEXT_DATA__" type="application\/json" crossorigin="anonymous">(.*?)<\/script>/)[1])
if (!JSONdara) return { error: API_ERROR }
let piece = _.sample(JSONdara.props.pageProps.pieces)
let { songName, lyric, audioUrl } = piece
if (!audioUrl) return { error: '找不到歌曲文件' }
return {
lyrics: `${songName}\n${lyric}`,
audioUrl: decodeURIComponent(audioUrl)
}
} catch (error) {
logger.error(error)
return { error: API_ERROR }
}
}