From df4356d3b23cce54757ce633470ed8e4010f48d6 Mon Sep 17 00:00:00 2001 From: Marius Mutu Date: Fri, 15 May 2026 15:53:54 +0300 Subject: [PATCH] perf: viewport 1366x768 + flag-uri de reducere overhead in Session 0 Pe prod scraper-ul ruleaza ca serviciu in Session 0 (fara GPU): Chromium randeaza software. Reducerea viewport-ului de la 1920x1080 la 1366x768 inseamna ~50% mai putini pixeli de rasterizat. 1366 e sigur peste pragul de ~1100px sub care BT scoate splash-ul "redirect to store". Adaugate flag-uri care taie overhead inutil fara GPU: --disable-gpu, --disable-dev-shm-usage, --disable-extensions, --disable-background-networking, --disable-renderer-backgrounding, --disable-features=Translate. Verificat e2e pe site-ul BT live la 1366px (formular login real, fara splash) si printr-o rulare completa prin bot: 5 conturi, 5 CSV-uri. Co-Authored-By: Claude Opus 4.7 --- btgo_scraper.py | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/btgo_scraper.py b/btgo_scraper.py index 8b72777..e389dbf 100644 --- a/btgo_scraper.py +++ b/btgo_scraper.py @@ -385,13 +385,23 @@ class BTGoScraper: logging.info("=" * 60) with sync_playwright() as p: - # Forteaza dimensiunea ferestrei la nivel de SO. Necesar cand - # scraper-ul ruleaza dintr-un Windows Service in session 0 (fara - # display): viewport-ul setat pe context (CSS) nu se propaga la - # fereastra fizica, iar BT afiseaza un splash "redirect to store" - # sub ~1100px care ascunde input#user. - launch_args = ['--window-size=1920,1080'] - context_kwargs = {'viewport': {'width': 1920, 'height': 1080}} + # Viewport 1366x768: BT afiseaza un splash "redirect to store" + # sub ~1100px latime; 1366 e sigur peste prag. Fata de 1920x1080 + # randeaza ~50% mai putini pixeli -> CPU mult mai mic la randarea + # software din Session 0 (serviciu Windows, fara GPU). + # --window-size forteaza dimensiunea la nivel de SO (viewport-ul + # CSS de context nu se propaga la fereastra fizica in session 0). + launch_args = [ + '--window-size=1366,768', + # Flag-uri care taie overhead inutil in Session 0 (fara GPU) + '--disable-gpu', + '--disable-dev-shm-usage', + '--disable-extensions', + '--disable-background-networking', + '--disable-renderer-backgrounding', + '--disable-features=Translate', + ] + context_kwargs = {'viewport': {'width': 1366, 'height': 768}} if self.config.HEADLESS: # Playwright 1.48: headless=True foloseste VECHIUL mod headless,