Review with more then 200 and sort
This commit is contained in:
28
src/index.js
28
src/index.js
@@ -325,6 +325,34 @@ const worker = new Worker('scrape-jobs', async (job) => {
|
|||||||
console.log(`[Job ${job.id}] ⚠️ Wartezeit abgelaufen – starte Auslesen aus dem aktuellen DOM...`);
|
console.log(`[Job ${job.id}] ⚠️ Wartezeit abgelaufen – starte Auslesen aus dem aktuellen DOM...`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// C. Sortierung auf "Neueste zuerst" (NEWEST_FIRST) umstellen
|
||||||
|
try {
|
||||||
|
const sorterLocator = page.locator('#reviewListSorters, [data-testid="reviews-sorter-component"], select[name="reviewListSorters"]').first();
|
||||||
|
if (await sorterLocator.count() > 0) {
|
||||||
|
console.log(`[Job ${job.id}] 🔄 Stelle Sortierung auf 'NEWEST_FIRST' (Neueste zuerst) um...`);
|
||||||
|
await sorterLocator.selectOption('NEWEST_FIRST');
|
||||||
|
await page.waitForTimeout(2500); // Warten bis Booking die Liste per AJAX neu lädt
|
||||||
|
} else {
|
||||||
|
// Fallback via JavaScript Event-Dispatch
|
||||||
|
const changed = await page.evaluate(() => {
|
||||||
|
const select = document.querySelector('#reviewListSorters, [data-testid="reviews-sorter-component"], select[name="reviewListSorters"]');
|
||||||
|
if (select) {
|
||||||
|
select.value = 'NEWEST_FIRST';
|
||||||
|
select.dispatchEvent(new Event('change', { bubbles: true }));
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}).catch(() => false);
|
||||||
|
|
||||||
|
if (changed) {
|
||||||
|
console.log(`[Job ${job.id}] 🔄 Sortierung via JS-Event auf 'NEWEST_FIRST' umgestellt.`);
|
||||||
|
await page.waitForTimeout(2500);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
console.log(`[Job ${job.id}] ⚠️ Sortierung konnte nicht angepasst werden:`, e.message);
|
||||||
|
}
|
||||||
|
|
||||||
let pageCount = 0;
|
let pageCount = 0;
|
||||||
const seenKeys = new Set();
|
const seenKeys = new Set();
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 342 KiB After Width: | Height: | Size: 377 KiB |
Reference in New Issue
Block a user