|
|
d28bf4e66a
|
feat(tradein): cian_newbuilding.py — ЖК catalog scraper (chart + reliability + offers, Wave 4 Worker C) (#459)
Deploy Trade-In / changes (push) Successful in 4s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Successful in 54s
Deploy Trade-In / deploy (push) Successful in 25s
Stage 6 / Wave 4 Worker C of CianScraper v1.
Cian.ru newbuilding (ЖК) catalog page scraper — extracts newbuilding metadata + 6 sister state containers (realtyValuation chart / reliability / reviews / offers / builders / housesByTurn).
Main Stage 6 deliverable: 7-month price dynamics chart → houses_price_dynamics table (cross-source benchmark для Stage 9 estimator).
Files:
- app/services/scrapers/cian_newbuilding.py (NEW, 548 LOC)
- tests/test_cian_newbuilding.py (NEW, 357 LOC, 20 tests)
Reviewed: schema match (migrations 020/021/025/029), ON CONFLICT constraint name verified (houses_price_dynamics_dim_key), graceful chart extraction (empty/None/fallback shapes), atomic transaction.
Known minor follow-ups (non-blocking):
- management_companies UPSERT: ext_id=NULL → potential duplicates (Postgres NULL!=NULL); bounded, document in vault
- offers items[] fast path: no dict-only filter / no room_count injection
- houses_price_dynamics primary shape stores total price into price_per_sqm column with prices_type='price' discriminator — Stage 9 estimator must respect prices_type filter
- house_reliability_checks no UNIQUE → unbounded growth on rescrape (deferred to future migration 030+)
Verdict: APPROVE (deep-code-reviewer).
|
2026-05-23 13:23:11 +00:00 |
|
|
|
2dd76ea5e8
|
feat(tradein): cian_session cookies management + admin endpoints (Wave 4 Worker A) (#457)
Deploy Trade-In / changes (push) Successful in 4s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Successful in 39s
Deploy Trade-In / deploy (push) Has been cancelled
|
2026-05-23 13:22:00 +00:00 |
|
|
|
962daf2d47
|
feat(tradein): yandex_helpers.py — JSON-LD + regex + date + NLP + money helpers (#456)
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / deploy (push) Successful in 29s
Deploy Trade-In / build-backend (push) Successful in 39s
|
2026-05-23 13:14:11 +00:00 |
|
|
|
5051ebde2e
|
feat(tradein): integrate Avito IMV as 5th evaluation source (on-demand cached) (#452)
Deploy Trade-In / changes (push) Successful in 4s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Successful in 39s
Deploy Trade-In / deploy (push) Successful in 20s
|
2026-05-23 13:08:22 +00:00 |
|
|
|
1b3edff6a9
|
feat(tradein): extend base.py save_listings to persist Cian-specific columns (PR #450 follow-up) (#455)
Deploy Trade-In / changes (push) Successful in 4s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / deploy (push) Successful in 20s
Deploy Trade-In / build-backend (push) Successful in 39s
|
2026-05-23 13:05:20 +00:00 |
|
|
|
eb4764f75a
|
feat(tradein): scrape_pipeline.py — Avito full orchestrator (search → houses → detail) (#451)
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Successful in 56s
Deploy Trade-In / deploy (push) Successful in 28s
|
2026-05-23 12:55:13 +00:00 |
|
|
|
4f0319297e
|
feat(tradein): cian.py SERP refactor — state-based extraction (137 fields, no jitter) (#450)
Deploy Trade-In / deploy (push) Successful in 19s
Deploy Trade-In / changes (push) Successful in 4s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Successful in 39s
|
2026-05-23 12:52:04 +00:00 |
|
|
|
5258a8f023
|
feat(tradein): avito_houses.py — Houses Catalog parser (state + reviews + history + recs) (#449)
Deploy Trade-In / changes (push) Successful in 4s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Successful in 44s
Deploy Trade-In / deploy (push) Successful in 19s
|
2026-05-23 12:37:24 +00:00 |
|
|
|
9ba776f2ca
|
feat(tradein): cian_state_parser shared utility + ScrapedLot Cian fields (#447)
Deploy Trade-In / build-backend (push) Blocked by required conditions
Deploy Trade-In / build-frontend (push) Blocked by required conditions
Deploy Trade-In / deploy (push) Blocked by required conditions
Deploy Trade-In / changes (push) Has been cancelled
|
2026-05-23 12:35:01 +00:00 |
|
|
|
7cdde30b13
|
feat(tradein): avito_detail.py — detail page parser (30+ fields incl. domoteka) (#443)
Deploy Trade-In / changes (push) Successful in 6s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Successful in 38s
Deploy Trade-In / deploy (push) Successful in 17s
|
2026-05-23 12:17:15 +00:00 |
|
|
|
6a2f734356
|
feat(tradein): avito_imv.py — Avito IMV evaluation API client (2 requests) (#444)
Deploy Trade-In / deploy (push) Blocked by required conditions
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Has been cancelled
|
2026-05-23 12:16:47 +00:00 |
|