From bcabd7fc18a43b70fbea77a45650fe05bc4836e6 Mon Sep 17 00:00:00 2001 From: biglyderv Date: Sat, 1 Feb 2025 00:54:51 -0500 Subject: [PATCH] fixesa --- site.js | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/site.js b/site.js index 3b1011e..41927cc 100644 --- a/site.js +++ b/site.js @@ -78,16 +78,15 @@ async function rounder(users, data, mode) { }, (process.env.delay * 1000) || (60 * 1000))) for (let u of users) { - if (timeout) break; let it = 0; while (p.length >= (process.env.maxRate || 15)) { p = p.filter(x => x != 'hi'); + if (p.length == 0) break; + let pv = await Promise.any([...p, pr]); if (timeout) { console.warn(`Somehow, this is stuck.`); break; } - if (p.length == 0) break; - let pv = await Promise.any([...p,pr]); it++; if (it > 10) { console.warn(`Promises got congested. Moving to another array...`) @@ -96,11 +95,12 @@ async function rounder(users, data, mode) { break; } } + if (timeout) break; data[u] = { followers: [], following: [] }; p.push(async function (k) { await siteCollector(u, 'followers', site, mode, data); - console.log(`User ${u} followers fully calculated`); + console.log(`User ${u} followers is fully calculated`); p[k] = 'hi'; }(p.length)); @@ -108,7 +108,7 @@ async function rounder(users, data, mode) { p.push(async function (k) { await siteCollector(u, 'following', site, mode, data); - console.log(`User ${u} following fully calculated`); + console.log(`User ${u} following is fully calculated`); p[k] = 'hi'; }(p.length)); @@ -222,6 +222,8 @@ async function siteCollector(user, path, site, useLimit, data2) { users = [...new Set(users)]; } + console.log(`Graph is fully downloaded`); + for (let uf in data) { let u = data[uf]; if (!u) continue; @@ -255,6 +257,7 @@ async function siteCollector(user, path, site, useLimit, data2) { } } + console.log(`Graph is fully repaired`); let dat = Object.entries(rankCalc(data, 100, penv, site == 'url')); dat = dat.sort((a, b) => a[1] - b[1]); let dat2 = {}; @@ -263,5 +266,7 @@ async function siteCollector(user, path, site, useLimit, data2) { } let srz = JSON.stringify(dat2); + console.log(`Data is calculated`); await writeFile(`./users.json`, srz, 'utf8'); + console.log(`Everything is done`); })()