From 0ce9933aaa942b3f9df01343b5a21aefb7d4cbae Mon Sep 17 00:00:00 2001 From: ChemaVX Date: Fri, 3 Jul 2026 15:46:09 +0000 Subject: [PATCH] =?UTF-8?q?fix(scraper):=20F3=20=E2=80=94=20el=20cap=20del?= =?UTF-8?q?=20RSS=20aplica=20a=20entries=20a=C3=B1adidas,=20no=20escaneada?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit entries[:20] antes del filtro de relevancia perdía las entries relevantes que no caen entre las 20 más recientes del feed (verificado con thedebrief.org: 0 relevantes en las primeras 20, 3 en las 100 totales). Ahora se escanean todas y el cap corta al añadir 20. Co-Authored-By: Claude Fable 5 --- src/scraper/exhaustive.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/scraper/exhaustive.py b/src/scraper/exhaustive.py index ba3dcbe..4cc2044 100644 --- a/src/scraper/exhaustive.py +++ b/src/scraper/exhaustive.py @@ -693,7 +693,12 @@ class ExhaustiveScraper: entries = parsed.entries or [] added = 0 if depth < settings.max_depth: - for e in entries[:20]: # cap, como los 30 links/página de web + # Se escanean TODAS las entries y el cap aplica a las añadidas: + # capar antes de filtrar perdía las relevantes que no caen entre + # las 20 más recientes (verificado con thedebrief: 0/20 vs 3/100). + for e in entries: + if added >= 20: # cap, como los 30 links/página de web + break link = normalize_url(getattr(e, "link", "") or "") title = getattr(e, "title", "") or "" if (not link.startswith("http") or is_blacklisted(link)