gendesign/backend/app/services/scrapers
lekss361 1b411f50ca feat(22d): admin UI buttons + reduce catalog jitter delay 800-1500ms → 300-700ms
UI (frontend/src/app/admin/scrape/page.tsx):
  Новая секция "Catalog-object (SSR)" на /admin/scrape с:
  - input max_objects (default 300)
  - кнопка "Грузить (skip today)" — POST с force=false (пропускает уже сегодня)
  - кнопка " Загрузить ВСЕ (force)" — POST с force=true (через confirm())

Backend (services/scrapers/domrf_catalog_object.py):
  jitter_sleep между запросами 800-1500ms → 300-700ms (~2.3x speedup).
  Catalog page менее sensitive чем kn-API; стабильно держала batch 300
  без 429/WAF на bookkeeping тесте.

Effect: full sweep 1532 obj ~50 min → ~22 min. Повторный запуск с
skip-today вернёт 0 obj если всё уже сегодня обновлено.
2026-05-18 02:35:37 +03:00
..
__init__.py add interactive parser of наш.дом.рф ЖК+flats with stealth Playwright 2026-04-27 17:58:40 +03:00
documents.py feat(22i): domrf_kn_documents new table + parser (#305) 2026-05-17 15:21:31 +00:00
domrf_catalog.py feat(22d): domrf_catalog.py scraper for per-flat price/status from SSR HTML (#309) 2026-05-17 15:40:01 +00:00
domrf_catalog_object.py feat(22d): admin UI buttons + reduce catalog jitter delay 800-1500ms → 300-700ms 2026-05-18 02:35:37 +03:00
domrf_kn.py fix(scrape-kn): real documents endpoints (5x) + skip obj_checks 404 + sem 3->6 2026-05-17 22:59:44 +03:00
ekburg_permits.py fix(#242): ekburg_permits SSL — verify=False для CA Минцифры РФ 2026-05-17 08:57:42 +03:00
flat_plans.py feat(22c): domrf_kn_flat_plans new table + parser stub (#308) 2026-05-17 15:39:34 +00:00
nspd_client.py fix(#231): repair test_rate_limit_semaphore regression + docstring sync 2026-05-17 10:22:16 +03:00
nspd_denorm.py feat(#126): Sub-PR A — NSPDClient.get_features_in_bbox_grid + engineering classifier (#247) 2026-05-17 05:54:30 +00:00
nspd_lite.py fix(nspd-geo): rosreestr2coord v5 compat — delay arg, tmp cache, dumps default 2026-05-11 14:43:44 +03:00
obj_checks.py feat(scrape-kn): parallel Phase B/C + wire obj_checks + documents + is_ekb auto-derive (#322) 2026-05-17 19:40:16 +00:00
objective.py fix(scrape-objective): stream-parse lots_pf via ijson to avoid OOM (#315) 2026-05-17 16:37:30 +00:00
stealth.py fix(stealth): bump Semaphore 6->8 for higher concurrency in gather 2026-05-17 23:04:51 +03:00