---
name: avtero_free_oem_sources
description: "avtero — бесплатные анонимные источники genuine-OEM: autodoc.ru (57 иномарок, ГЛАВНЫЙ) + megazip (японцы); проверено вживую 2026-06-22"
metadata: 
  node_type: memory
  type: project
  originSessionId: 4eea915e-3b47-4cd5-8a0e-bfa29b78a87c
---

**ОТЕЧЕСТВЕННЫЕ Lada/ВАЗ/ГАЗ/УАЗ — genuine-OE из TecDoc-применимости (v0.7.17, коммит f87c326).** autodoc/emex без EPC → LLM угадывала неподтверждаемый OEM (Vesta колодки `21120-3501080`=Приора, emex=0). `tecdoc_local.oe_for_vehicle_category(make,model,year,engine,cat_key)`: K-Type→подходящие артикулы (дамп 2018 article_links)→их OE-номера (мост в дамп 2019 article_oe_numbers по supplier+PN)→OE с Manufacturer=марка. `orchestrator._apply_domestic_tecdoc_oe` после gap-резолвера (даже без пробелов), только отеч.: заполняет пустое + перезаписывает текущее ТОЛЬКО если emex не подтверждает (emex-подтверждённое не трогаем; расходники пропускаем). Классиф. `_classify_cat_loose` (порядок слов не важен). Проверено: Vesta колодки → `41 06 084 81R` (LADA, emex=25). Детали → Obsidian Decisions D-domestic-tecdoc-oe.

**ОСЬ/СТОРОНА в подборе (v0.7.15–16, 2026-06-22, коммиты 67e7445+576c55c).** Каталог кодирует ось (перед/зад) и сторону (лев/прав, L.H./R.H.) в СЕКЦИИ узла (`item.name` «511 тормоз передних колёс»), НЕ в имени листа («Тормозной диск» одинаков перед/зад) → раньше перед=зад. Фикс: `emex_catalog.select_by_name_axle_aware` (axle/side gate + chassis-breakpoint по хвосту VIN + size→general_notes + синоним колод→накла), guard «тип детали — в detailname, секция только для оси». Рычаги (каталожное «Управл. рычаг» ≠ запрос) — новый PASS 1.6 `_autodoc_axle_pick`: LLM выбирает раздел, пул гейтится по оси/стороне, LLM выбирает из отфильтрованного. Проверено XC90 YV1CM2457E1698159: диск перед 31400893≠зад 31423152, колодки перед 30793265≠зад 30793093, рычаг перед 31304045/046 (НЕ зад 31304152/153). Этот баг поймала кнопка фидбэка [[avtero_feedback_learning]]. Детали → Obsidian Decisions D-axle-aware-match.

**СТАТУС: autodoc ВСТРОЕН в прод v0.7.12 (2026-06-22).** `app/scrapers/autodoc_catalog.py` (httpx, переиспользует matching emex). Встроен ПЕРВЫМ (бренд-корректен по VIN), emex фолбэком: (A) `_pre_resolve_parts._one` autodoc→emex; (B) gap-резолвер PASS 0 autodoc перед emex PASS 1. Закрыл Solaris/Polo/Logan (e2e VW Polo→4 genuine VW OEM); Volvo/Kia без регрессий; 18 pre_resolve тестов зелёные. Детали → Obsidian avtero/Changelog v0.7.12 + Decisions D-autodoc-primary. **Новые китайцы (Haval/Chery/Geely) — бесплатно ПОКРЫВАЕМЫ, проверено вживую 2026-06-22 (TecDoc 1Q2018 их не знает).** Источники (всё анонимно, без логина):
- **Применимость авто→деталь→OEM (замена TecDoc-applicability):** RU-бренды запчастей, SSR-HTML, парсить selectolax по полям `Применяемость`/`OEM-номера`. **LUZAR** luzar.ru (охлаждение: LRc 3027→Haval Jolion 21- 1.5T→OEM 1301101XGW02A), **StartVolt** startvolt.com (электрика, раздел «Китайский автопарк»: VSP 2701→Haval F7/Jolion→OEM ILZKAR8L7G), **Trialli** (подвеска/тормоза). URL-слаг самоописательный (haval/chery/jolion/tiggo) → обход по дереву /catalogue/.
- **Кроссы OEM→аналоги (чистый JSON, покрывают Haval+Chery):** `webapi.autodoc.ru/api/manufacturers/{OEM}` (retail-сторона autodoc, НЕ genuine-EPC) + `emex.ru/api/search/search?detailNum={OEM}`. Проверено: Chery 481H-1012010, Haval 1017100XEC01.
- Доп: exist.ru `/Price/?pcode=` (идентиф.+бренд-карта, номера аналогов маскированы); avto.pro (Chery только); zzap (нужен headless, NGENIX). НЕ годятся: avtoto (B2B), RockAuto (только Jolion 2024 MX).
- Архитектура: LUZAR/StartVolt (вход: модель→деталь→OEM) → emex/autodoc-retail (обогащение аналогами). Граница: детали-по-типу+OEM+аналоги ЕСТЬ; заводского китайского EPC/схем НЕТ (бесплатного не существует).

**СТАТУС v0.7.13 (2026-06-22, commit f25608a): ОБА пункта закрыты + LUZAR ПОСТРОЕН.**
- **п.2 LUZAR ВСТРОЕН** — `app/scrapers/cn_applicability.py` (httpx+selectolax, SSR `.card-catalog`: имя-с-применимостью + `ОЕМ номер:` + артикул). PASS 1.5 gap-резолвера, ТОЛЬКО китайские марки (`is_chinese_make`), узкий домен охлаждение/термал. 3 гейта корректности: head-noun (тип карточки=концепт детали), applicability (карточка называет модель/марку), make-disambiguation (карточка содержит OEM неск. марок → берём по `manufacturer_of`, иначе пропуск). Живьём Haval Jolion: радиатор `1301101XGW02A`, термостат `1306100XEB05`, датчик темп. `3611200AEB02` (выбран Haval из Geely+Haval). 7 юнит-тестов.
- **п.1 был почти готов** — `emex.search_by_oem` УЖЕ покрывает китайские OEM в проде. `app/scrapers/autodoc_retail.py` (`webapi.autodoc.ru/api/manufacturers/{OEM}`): `manufacturer_of()`=верификатор марки (для п.2), `cross()`=тонкий фолбэк в search_cross (<3 кандидатов) — маржинален (продавцы одного номера).
- **StartVolt ОТЛОЖЕН** — каталог JS/AJAX (`/catalogue/` не SSR, одинаковая длина на разные запросы), как autoopt-ловушка. Нужен Playwright — сейчас не оправдан. LUZAR закрывает охлаждение/термал.
- Lada этот код НЕ задействует (`is_chinese_make` ложна). Lada → LLM-знание+аналоги (genuine Lada не в autodoc/emex-EPC). Прогон Vesta XTAGFL110HY090585: масл/возд.фильтр+ремень ГРМ подтверждены emex; тормозные колодки Весты `21120-3501080-00` emex НЕ знает (Приора-номер) — бэклог: грунтовать тормоза Lada через TecDoc K-Type.

**Lada/ГАЗ/УАЗ — autoopt ОТЛОЖЕН как low-ROI (2026-06-22, после ~12 зондов).** Источник бесплатный/анонимный, парсер строк чарта работает (`.n-catalog-item`→`__name`+`__article`[последний span=OEM], проверено `2121-5109xxx`). НО полноценный резолвер = браузерный проект: поиск детали рендерится JS/AJAX (в серверном HTML результатов нет), `.n-catalog-item` переиспользован под карточки офисов, чарты названы по узлам (слабый part→chart матч), модели на /vaz неполные (Нива только по прямому slug), кросс-модельные номера (GAZ на Ниве). **Решение НЕ строить сейчас:** Lada уже отдаёт детали — **локальный TecDoc резолвит Lada в K-Type** (Granta 55616.., Niva 3062.., Vesta 117710, 2107 3044.., Kalina 11572..) → аналоги через существующий пайплайн. Genuine-OEM по Lada = маржинальная ценность (дешёвые детали, аналоговый рынок). Если станет приоритетом — Playwright-скрейпер AJAX-поиска autoopt, не regex. Итог покрытия: иномарки=genuine(autodoc)+аналоги(TecDoc); отечественные=аналоги(TecDoc).

2026-06-22 разведка 5 RU/free-каталогов (параллельные агенты + личная проверка до живого OEM). Цель — free-источник genuine-OEM по марками, где emex слеп (Solaris/Polo/Logan РФ-сборки). РЕЗУЛЬТАТ — найден:

**autodoc.ru — ГЛАВНЫЙ. Free, анонимно, реальные OEM, 57 брендов.** Доказано: Toyota `0415238010`, Hyundai `263502M000`/`2630035505` — без логина/капчи/paywall.
- JSON API (сайт — Angular SPA, SSR пустой; только API), база `https://web.autodoc.ru/api/catalog-original-service/catalog-original/`, источник Laximo. curl_cffi `impersonate=chrome`, напрямую с мини (без прокси).
- Цепочка (всё анонимно): `brands` (57, с `catalogCode`) → `wizard-items?catalogCode=&ssd=` (пошагово: выбираешь опцию, её `key`→следующий `ssd`, пока `determined:true`; параметры Тип ТС/Год/Регион/Семейство) → `wizard-modifications?catalogCode=&ssd={wizardSsd}` (→ `modifications[0].ssd` = ssd машины, ИМЕННО его дальше) → `quick-groups?catalogCode=&ssd={vssd}` (именованные группы) либо `categories` → `quick-group-nodes/{quickGroupId}?catalogCode=&ssd={vssd}` → OEM **inline в `goods[]`**: `article`(=OEM), `name`, `codeOnImage`, `attributes`(фитмент). Есть VIN-поиск (`vin-modifications`).
- ssd — opaque, session-agnostic, но строится ТОЛЬКО прохождением wizard (кэшировать resolved vehicle ssd). Бренд-флаги `supportWizardSearch/VinSearch` бывают false (Acura) — проверять перед опорой. Undocumented private API → throttle+cache, вежливо.
- Покрывает Hyundai/Kia/VW/Renault/Dacia/Nissan/Datsun/Ravon(UzAuto)/Toyota/BMW/MB/Audi/Ford/Mazda/Skoda/Seat/Opel(GM)/Volvo/Porsche/Mitsubishi/Suzuki/Lexus/Infiniti/Jaguar/LandRover/SsangYong/ZAZ и др. → закрывает иномарки РФ-рынка.

**megazip.net — японский фолбэк.** Free, анонимно, реальные OEM (Toyota `27060-28300`), SSR-HTML (парсить `<table>`), ТОЛЬКО через прокси `:2081`. 15 брендов: Toyota/Lexus/Nissan/Mitsubishi/Subaru/Suzuki/Honda + мото/мото-вода. Нет Korean/EU. Кросс-чек для японцев.

**НЕ годятся:** amayama (для человека free, боту — Cloudflare Turnstile с IP мини, нужен residential+солвер); elcats.ru (логин autopassport + robots Disallow, и НЕТ Lada/ГАЗ/УАЗ); exist.ru (ссылочник, OEM за OpenID-логином, шлёт на japancats/elcats); partsouq (403).

**ОСТАВШИЙСЯ ПРОБЕЛ: РФ-домашние Lada/ВАЗ, ГАЗ, УАЗ** — нет ни в autodoc, ни в elcats. Нужен отдельный free RU-domestic источник (офиц. каталог Lada / japancats не про них / искать). Следующий шаг.

Связь: [[avtero_7zap_reachable]] (7zap=платный, отвергнут), [[avtero_overview]]. Харнесс: curl_cffi в `~/.venvs/CebersResearch`, мини `cebers_mini@Cebers-mini.local`.
