[tradein][scrapers] Yandex покрытие полей: area 63%, ceiling 0, описание 50%, kitchen 0; отзывы/рейтинг ЖК не садятся #1792

Closed
opened 2026-06-19 15:40:06 +00:00 by lekss361 · 0 comments
Owner

Проблема

У Yandex частичное покрытие ключевых полей: area только 63%, ceiling_height 0, description 50%, kitchen_area_m2 0, living_area 40%, metro 52%. Плюс отзывы/рейтинг ЖК не садятся в БД.

Доказательства (live probe + DB 2026-06-19)

Покрытие активных yandex-листингов (7295):

  • area_m2: 4615 (63% — у 37% нет площади!), rooms 99%, floor 99%, year 55%

  • ceiling_height: 0, kitchen 0, description 3649 (50%), living 2923 (40%), metro 3829 (52%)

  • area берётся из _parse_title (yandex_detail.py:167) — 37% промахов вероятно на нестандартных форматах заголовка (студии/«свободная планировка»). Живой offer (realty.yandex.ru/offer/3402418396407468801) площадь на странице ЕСТЬ (35,5 м²) → парс достаёт не всегда.

  • Антибот: на чистом IP offer-страница отдаётся без gate/captcha.

  • ЖК отзывы/рейтинг: yandex_newbuilding.py:73-101 парсит rating (4.3) / ratings_count / text_reviews (verified live 2026-06-15, ЖК Татлин/Рио), но house_reviews = 0 и houses.rating_score ~13 → не садятся в стандартные таблицы.

NB: основной разрыв свежести yandex — yandex_city_sweep застрял (последний успех 06-18 11:54, 8 zombie/48ч); фикс — незакоммиченная ветка feat/yandex-gate-via-camoufox (#886 Phase 2). Покрытие полей надо мерить после её деплоя.

Что сделать

  1. Расширить _parse_title / fallback на extended-info блок для area на нестандартных форматах (студия / свободная планировка) → добить 63%→~95%.
  2. Проверить, почему ceiling/kitchen 0 — берёт ли yandex_detail эти поля вообще (на странице они есть в характеристиках).
  3. ЖК отзывы/рейтинг (yandex_newbuilding) — довести до house_reviews/houses.rating_score.

Усилие

M. Мерить покрытие ПОСЛЕ деплоя camoufox-ветки (#886).

Файлы: tradein-mvp/backend/app/services/scrapers/yandex_detail.py, yandex_newbuilding.py.
Cross-ref: #886 (yandex→camoufox), #1789 (avito ЖК-enrichment — тот же класс). Анализ: vault research/Avito_Scraper_Endpoint_Map_0619.md.

## Проблема У Yandex частичное покрытие ключевых полей: **area только 63%**, `ceiling_height` 0, `description` 50%, `kitchen_area_m2` 0, `living_area` 40%, `metro` 52%. Плюс отзывы/рейтинг ЖК не садятся в БД. ## Доказательства (live probe + DB 2026-06-19) Покрытие активных yandex-листингов (7295): - area_m2: 4615 (**63%** — у 37% нет площади!), rooms 99%, floor 99%, year 55% - ceiling_height: 0, kitchen 0, description 3649 (50%), living 2923 (40%), metro 3829 (52%) - area берётся из `_parse_title` (`yandex_detail.py:167`) — 37% промахов вероятно на нестандартных форматах заголовка (студии/«свободная планировка»). Живой offer (realty.yandex.ru/offer/3402418396407468801) площадь на странице ЕСТЬ (35,5 м²) → парс достаёт не всегда. - Антибот: на чистом IP offer-страница отдаётся без gate/captcha. - ЖК отзывы/рейтинг: `yandex_newbuilding.py:73-101` парсит rating (4.3) / ratings_count / text_reviews (verified live 2026-06-15, ЖК Татлин/Рио), но `house_reviews` = 0 и `houses.rating_score` ~13 → не садятся в стандартные таблицы. NB: основной разрыв свежести yandex — `yandex_city_sweep` застрял (последний успех 06-18 11:54, 8 zombie/48ч); фикс — незакоммиченная ветка `feat/yandex-gate-via-camoufox` (#886 Phase 2). Покрытие полей надо мерить после её деплоя. ## Что сделать 1. Расширить `_parse_title` / fallback на extended-info блок для area на нестандартных форматах (студия / свободная планировка) → добить 63%→~95%. 2. Проверить, почему ceiling/kitchen 0 — берёт ли yandex_detail эти поля вообще (на странице они есть в характеристиках). 3. ЖК отзывы/рейтинг (`yandex_newbuilding`) — довести до `house_reviews`/`houses.rating_score`. ## Усилие M. Мерить покрытие ПОСЛЕ деплоя camoufox-ветки (#886). **Файлы:** `tradein-mvp/backend/app/services/scrapers/yandex_detail.py`, `yandex_newbuilding.py`. **Cross-ref:** #886 (yandex→camoufox), #1789 (avito ЖК-enrichment — тот же класс). Анализ: vault `research/Avito_Scraper_Endpoint_Map_0619.md`.
lekss361 added the
bug
priority/p2
scope/backend
scrapers
status/ready
tradein
labels 2026-06-19 15:40:13 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#1792
No description provided.