ДомКлик как четвёртый источник переливки московского сырья в listings #3497

Merged
lekss361 merged 1 commit from feat/msk-domclick-import into main 2026-09-12 12:26:10 +00:00

1 commit

Author SHA1 Message Date
bot-backend
f6938452d0 feat(msk-import): ДомКлик как четвёртый источник переливки сырья в listings
All checks were successful
CI / changes (pull_request) Successful in 11s
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI Trade-In / changes (pull_request) Successful in 9s
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI Trade-In / backend-tests (pull_request) Successful in 7m21s
Сбор ДомКлика по Москве пошёл (PR #3496), но переливать его в listings было
нечем: в SOURCE_VIEWS стояли только Циан, Авито и Яндекс. Вью
msk_raw.domclick_latest в проде уже существует, не хватало двух записей в
словарях и распознавания города.

## Город читается первым компонентом адреса

У Циана города в адресе нет вовсе и Москву выдаёт префикс округа; у Яндекса
регион стоит вторым компонентом после страны. У ДомКлика адрес начинается
прямо с города: «Москва, улица Нижние Мнёвники, 16 к2».

Замер по 5 024 карточкам первого прохода: первый компонент имеет ровно одно
значение — «Москва», областных нет ни одной. Это ожидаемо, сырьё собрано
запросом с GUID-ом Москвы и отфильтровано по bbox ещё на стороне сборщика.

Поэтому фильтр здесь — вторая линия, а не единственная. Сменится GUID в
сборщике или приедет в ту же таблицу второй город — импорт не потащит его в
Москву молча, а отложит в skipped_not_moscow.

Новая Москва регион не ломает: «Москва, пос. Птичное, …», «Москва, x.
Ильичевка, …» — посёлок стоит ВТОРЫМ компонентом, первым всегда город, что и
соответствует коду 77.

Сравнение идёт по компоненту целиком, а не по префиксу строки: иначе
«Московская область» и «Московский» прошли бы как Москва. Оба случая
закреплены тестом.

## Тесты

Распознавание Москвы, включая две формы Новой Москвы; отбраковка области,
Екатеринбурга, похожего на префикс «Московский», пустой строки и None;
проводка источника в оба словаря. 45 passed, ruff чистый.

Claude-Session: https://claude.ai/code/session_01NQb6WeJtagZwZnUsSjDizs
2026-09-12 15:16:07 +03:00