Свип с чужим регионом падает вместо тихого сбора Екатеринбурга #3525

Merged
lekss361 merged 1 commit from feat/msk-mo-scrape-schedules into main 2026-09-15 07:09:06 +00:00

1 commit

Author SHA1 Message Date
e4c1e9dab3 fix(scraper-kit): свип с чужим region_code падает вместо тихого сбора ЕКБ
All checks were successful
CI Trade-In / changes (pull_request) Successful in 12s
CI Trade-In / browser-tests (pull_request) Has been skipped
CI / changes (pull_request) Successful in 15s
CI Trade-In / frontend-checks (pull_request) Has been skipped
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 / backend-tests (pull_request) Successful in 5m9s
Расписание с region_code 77/50 (#3515 научил планировщик читать регион из строки)
задаёт регион ШТАМПА, но не гео-скоуп прогона. У avito/cian/yandex скоуп — anchors
города из CITY_ANCHORS, а этот реестр покрывает только Свердловскую область: строка
вида avito_city_sweep_moscow с {"region_code": 77} откатилась бы на EKB_ANCHORS,
собрала Екатеринбург и записала его как Москву — со штатными счётчиками и без
аномалий в логах. У domclick скоуп зашит ещё жёстче: providers/domclick/serp.py
строит BFF-URL с _EKB_ADDRESS_GUID/_EKB_AREA_ID и греет контекст на
ekaterinburg.domclick.ru, а city_id из default_params fetch_city игнорирует
(vestigial) — там ЕКБ собрался бы при любом region_code.

_require_region_scope: регион != 66 без явных anchors → ValueError до первого
запроса. Вызовы в run_avito/cian/yandex_city_sweep; у domclick отдельный гард на
region_code (anchors у него нет вовсе), стоящий в pipeline — поэтому он общий и для
kit-native job'а, и для продуктового дубля с куками Sber ID.

Явные anchors для чужого региона гард пропускает: запрещён не регион, а молчаливый
ЕКБ-fallback.

Москва и МО попали в прод-корпус разовым ручным коллектором
(scripts/local-avito-msk/collect.py -> msk_raw -> app.tasks.msk_raw_import), а не
свипами; регулярный сбор по ним требует сперва завести города в
CITY_ANCHORS/CITY_LOCATIONS, поэтому строк расписаний эта ветка не заводит.
2026-09-15 09:58:38 +03:00