chore: install Chromium in the Docker image for the fallback scraper
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013gwc3aCiyQxmCWQke8RvEz
This commit is contained in:
@@ -9,6 +9,7 @@ COPY . .
|
|||||||
FROM node:22-slim
|
FROM node:22-slim
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=build /app .
|
COPY --from=build /app .
|
||||||
|
RUN npx --yes playwright install --with-deps chromium
|
||||||
ENV NODE_ENV=production
|
ENV NODE_ENV=production
|
||||||
# De SQLite-database hoort op het persistente volume te staan; zonder deze
|
# De SQLite-database hoort op het persistente volume te staan; zonder deze
|
||||||
# default zou een vergeten DB_PATH stilletjes naar de container-fs schrijven
|
# default zou een vergeten DB_PATH stilletjes naar de container-fs schrijven
|
||||||
|
|||||||
@@ -39,3 +39,10 @@ check. Een mislukte poging (pagina onbereikbaar, geen prijs gevonden,
|
|||||||
of de mail kon niet verstuurd worden) verandert de opgeslagen prijs
|
of de mail kon niet verstuurd worden) verandert de opgeslagen prijs
|
||||||
niet, zodat de volgende dag opnieuw wordt geprobeerd. Via de "Nu
|
niet, zodat de volgende dag opnieuw wordt geprobeerd. Via de "Nu
|
||||||
controleren"-knop in de UI kan dit ook handmatig getriggerd worden.
|
controleren"-knop in de UI kan dit ook handmatig getriggerd worden.
|
||||||
|
|
||||||
|
Als het ophalen van de prijs op de gewone manier mislukt (netwerkfout, of
|
||||||
|
geen prijs gevonden in de HTML), probeert de app het één keer opnieuw met
|
||||||
|
een echte headless-browser (Playwright/Chromium) — nuttig voor pagina's
|
||||||
|
die de prijs pas met JavaScript renderen, of die eenvoudige HTTP-clients
|
||||||
|
blokkeren. Geen garantie tegen elke vorm van bot-detectie, maar dekt een
|
||||||
|
reëel deel van de gevallen die de gewone aanpak mist.
|
||||||
|
|||||||
Reference in New Issue
Block a user