Enhance logging with student details in evaluation

Updated `iterateOverDashboardTable.js` to include student name and ID in log output. Added functions in `evaluateStartPakket.js` to fetch student name and ID from specified selectors. Adjusted `.gitignore` to exclude `.idea` directory.
This commit is contained in:
bdaneels
2024-12-03 14:16:44 +01:00
parent 3b4ccefa66
commit 05a1b85801
5 changed files with 170 additions and 14 deletions

View File

@@ -6,6 +6,9 @@ start dan het script
*/
const puppeteer = require("puppeteer");
const isStartPakketAvailable = require("./evaluateStartPakket");
const xlsx = require("xlsx");
const fs = require("fs");
const saveResultsToExcel = require("./saveResultsToExcel");
async function iterateOverDashboardTable() {
/*connection to local host */
@@ -13,6 +16,9 @@ async function iterateOverDashboardTable() {
browserURL: "http://localhost:9222", // Connect to the browser's debugging address
});
//array to store results for Excel export
let results = []
// Get all open pages (tabs)
const pages = await browser.pages();
console.log(`Found ${pages.length} open pages on the browser.`);
@@ -49,6 +55,7 @@ async function iterateOverDashboardTable() {
);
console.log(`Found ${links.length} AA-links to process.`);
// process links
for (let i = 0; i < links.length; i++) {
console.log(`Processing link ${i + 1}`);
@@ -76,19 +83,39 @@ async function iterateOverDashboardTable() {
try {
const evaluationResult = await isStartPakketAvailable(newPage);
if (evaluationResult.isCollapsed) {
console.log(`Evaluation succeeded for link ${i + 1} student name: ${evaluationResult.studName}
ID: ${evaluationResult.studId}`);
} else {
console.log(`Evaluation failed for link ${i + 1}`);
}
//Save results for Excel
results.push({
LinkNumber: i +1,
StudentName: evaluationResult.studName || 'N/A',
StudentID: evaluationResult.studId || "N/A",
IsCollapsed: evaluationResult.isCollapsed ? "Yes" : "No",
IsCollapsedKeuze: evaluationResult.isCollapsed_keuze ? "Yes" : "No",
IsCollapsedMain: evaluationResult.isCollapsed_main ? "Yes" : "No",
})
console.log(`Link ${i + 1 } processed successfully.`);
} catch (error) {
console.error(`Error processing link ${i + 1}:`, error.message);
// Save error for Excel
results.push({
LinkNumber: i + 1,
StudentName: "Error",
StudentID: "Error",
IsCollapsed: "Error",
IsCollapsedKeuze: "Error",
IsCollapsedMain: "Error",
});
}
finally {
await newPage.close();
}
await newPage.close();
}
console.log("All links processed.");
saveResultsToExcel(results, "DashboardResults.xlsx");
console.log("Results saved successfully to DashboardResults.xlsx");
}
module.exports = iterateOverDashboardTable();