update
This commit is contained in:
@@ -44,8 +44,7 @@ async function test() {
|
||||
* 主函数
|
||||
*/
|
||||
async function main() {
|
||||
console.log("neteaseMusic Starting...");
|
||||
|
||||
console.log("neteaseMusic Start fetch ...");
|
||||
while (true) {
|
||||
// 删除脏数据
|
||||
var affectRows1 = await dbUtils.query(`DELETE FROM song_artist_relation WHERE song_id = 0 OR artist_id = 0`, []);
|
||||
@@ -64,35 +63,17 @@ async function main() {
|
||||
* 数据更新 (重新爬取)
|
||||
*/
|
||||
async function update() {
|
||||
console.log("neteaseMusic update ...");
|
||||
|
||||
let sleepTime = 100;
|
||||
|
||||
// 从数据库中查出现有专辑,并进行更新
|
||||
console.log("start fetching albums ...")
|
||||
let albumIds = await dbUtils.query(`
|
||||
SELECT DISTINCT album_id FROM album WHERE version = 1 -- and description like '%专辑《%》,简介:%'
|
||||
`, []);
|
||||
albumIds = albumIds.map(item => item.album_id);
|
||||
for (let i = 0; i < albumIds.length; i++) {
|
||||
await checkIsExit();
|
||||
const albumId = albumIds[i];
|
||||
console.log(`${i}/${albumIds.length} | album: ${albumId} | ${await statistics()}`);
|
||||
try {
|
||||
await albumInfoUtils.update({ albumId: albumId });
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
}
|
||||
await sleepUtils.sleep(sleepTime);
|
||||
console.log("neteaseMusic Start update ...");
|
||||
while (true) {
|
||||
await albumInfoUtils.fetchAll({ isUpdate: true });
|
||||
await sleepUtils.sleep(2000);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 统计数据库中数据
|
||||
*/
|
||||
updateStatisticsResult();
|
||||
setInterval(updateStatisticsResult, 1000);
|
||||
async function updateStatisticsResult() {
|
||||
async function watch() {
|
||||
let sql = `
|
||||
SELECT
|
||||
song_count,
|
||||
@@ -142,7 +123,7 @@ async function updateStatisticsResult() {
|
||||
|
||||
let songAlbumCount = result[0].song_album_count;
|
||||
let songArtistCount = result[0].song_artist_count;
|
||||
global.statistics = [
|
||||
let statisticsString = [
|
||||
`song: ${songCount}/${songCount + songWaiting}`,
|
||||
`album: ${albumCount}/${albumCount + albumWaiting}`,
|
||||
`artist: ${artistCount}/${artistCount + artistWaiting}`,
|
||||
@@ -150,6 +131,7 @@ async function updateStatisticsResult() {
|
||||
`songAlbum: ${songAlbumCount}`,
|
||||
`songArtist: ${songArtistCount}`
|
||||
].join(', ');
|
||||
console.log(statisticsString);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -170,5 +152,6 @@ global.checkIsExit = async function () {
|
||||
module.exports = {
|
||||
main: main,
|
||||
update: update,
|
||||
watch: watch,
|
||||
test: test,
|
||||
}
|
Reference in New Issue
Block a user