Помощник Покупки Авто

Помощник Покупки Авто

@car-purchaseproductivity

Поиск автомобилей на Auto.ru, Drom.ru и Авито, проверка VIN, анализ фото на повреждения, сравнение рыночных цен, расчёт полной стоимости владения и подготовка документов для покупки. Полный цикл от поиска до сделки.

0 установокПубличный

SKILL.md

Помощник покупки автомобиля

Поиск, проверка и оценка автомобилей на трёх крупнейших площадках России: Auto.ru, Drom.ru и Avito Авто. Проверка VIN-номера, анализ фотографий на скрытые повреждения, оценка рыночной стоимости, расчёт стоимости владения, помощь с документами и оформлением сделки.

Обзор

Три платформы покрывают ~85% рынка подержанных автомобилей в России:

ПлатформаДоля рынкаОсобенности
Auto.ru (Яндекс)~35%Крупнейший авто-классифайд, VIN-отчёты, проверка истории, данные от дилеров
Drom.ru~25%Популярен на Дальнем Востоке и в Сибири, много JDM-импорта, хорошие технические характеристики
Avito Авто~25%Крупнейший通用 классифайд, много объявлений от частных продавцов, агрессивная защита от ботов

Стратегия: Параллельный поиск по всем трём платформам с последующей дедупликацией, VIN-проверкой, анализом фото и ранжированием.

Установка browser-use

Для работы этого навыка необходим browser-use.

Если browser-use не установлен — активируй навык browser-use и следуй его инструкциям. Он автоматически установит Python, pip и browser-use для твоей платформы.

Пока идёт установка, скажи: «Настраиваю поиск, это займёт пару минут...» НЕ показывай пользователю команды, ошибки или технические детали.

Доступные инструменты

browser-use CLI

Управление браузером для поиска и извлечения данных с площадок.

browser-use --headed open "URL"   # Открыть страницу
browser-use state                  # Получить состояние DOM
browser-use click "text=..."       # Кликнуть по элементу
browser-use type "..."             # Ввести текст
browser-use eval "JS"              # Выполнить JavaScript
browser-use keys "..."             # Нажать клавиши
browser-use screenshot             # Скриншот для анализа через image_analysis
browser-use close                  # Закрыть текущую вкладку
browser-use close --all            # Закрыть все вкладки

web_search

Поиск обзоров автомобилей, типичных проблем, рыночных цен, истории VIN.

Параметры:

  • query (string) — поисковый запрос
  • count (1-50) — количество результатов
  • freshness ("oneDay" | "oneWeek" | "oneMonth" | "noLimit") — свежесть
  • allowed_domains (string[]) — ограничение по доменам

web_reader

Чтение статей с обзорами, технических характеристик, страниц сравнения.

Параметры:

  • url (string) — URL страницы
  • return_format ("markdown" | "text") — формат возврата
  • retain_images (boolean) — сохранять ли изображения

image_analysis

КРИТИЧЕСКИЙ инструмент для этого навыка — анализ фотографий автомобиля на скрытые повреждения, признаки перекраски, состояние салона и подкапотного пространства.

Параметры:

  • imageSource (string) — URL изображения
  • prompt (string) — что анализировать

Сбор требований у пользователя

Перед поиском уточни у пользователя:

  1. Марка и модель — конкретные или бюджет-first подход
  2. Бюджет — минимальная и максимальная цена (₽)
  3. Год выпуска — от и до (например, 2015-2020)
  4. Пробег — максимальный (например, до 150 000 км)
  5. Город / регион — где искать
  6. Кузов — седан, хэтчбек, универсал, кроссовер, внедорожник, минивэн
  7. Двигатель — бензин/дизель/гибрид, объём, мощность
  8. Коробка передач — автомат/механика/робот/вариатор
  9. Привод — передний/задний/полный
  10. Продавец — дилер / частное лицо / без разницы
  11. Дополнительно — цвет, количество владельцев, состояние (не битая, не крашеная)

Если пользователь не знает марку/модель — проведи бюджет-first подход: уточни бюджет, тип кузова, предпочтения по надёжности — и предложи 3-5 моделей.

URL-структура площадок

Auto.ru (Яндекс)

Базовый URL: https://auto.ru/cars/{brand}/{model}/used/

Параметры поиска Auto.ru

ПараметрОписаниеЗначенияПример
geo_idРегионID региона (см. таблицу)213
price_fromМин. ценаInteger (₽)500000
price_toМакс. ценаInteger (₽)1500000
year_fromГод отInteger2015
year_toГод доInteger2021
km_age_fromПробег отInteger (км)0
km_age_toПробег доInteger (км)150000
engine_groupДвигательBENZIN, DIESEL, HYBRIDBENZIN
transmissionКППAUTOMATIC, MECHANICAL, ROBOT, VARIATORAUTOMATIC
body_type_groupКузовSEDAN, HATCHBACK, ALLROAD, WAGON, MINIVAN, COUPE, PICKUPSEDAN
drive_groupПриводFRONT_DRIVE, REAR_DRIVE, ALL_WHEEL_DRIVEFRONT_DRIVE
seller_groupПродавецCOMMERCIAL (дилер), PRIVATE (частное)PRIVATE
owners_count_groupКол-во владельцевONE, TWO, THREE_OR_MOREONE
state_groupСостояниеNOT_BEATEN, PERFECTNOT_BEATEN
sortСортировкаprice-asc, price-desc, date, mileage, relevancedate
pageСтраницаInteger1
output_typeФормат выводаlistlist

Популярные регионы Auto.ru (geo_id)

geo_idРегион
213Москва
2Санкт-Петербург
54Новосибирск
1Москва и МО
47Екатеринбург
64Красноярск
92Краснодар
10174Татарстан (Казань)
56Нижний Новгород
116Приморский край (Владивосток)

Примеры URL Auto.ru

Toyota Camry 2018-2021, Москва, до 2 000 000 ₽:

https://auto.ru/cars/toyota/camry/used/?geo_id=213&price_from=1500000&price_to=2000000&year_from=2018&year_to=2021&sort=date

Kia Rio, автомат, передний привод, до 1 000 000 ₽, от частного лица:

https://auto.ru/cars/kia/rio/used/?geo_id=213&price_to=1000000&transmission=AUTOMATIC&drive_group=FRONT_DRIVE&seller_group=PRIVATE&sort=date

Кроссовер, до 1 500 000 ₽, не битый, один владелец:

https://auto.ru/cars/used/?geo_id=213&price_to=1500000&body_type_group=ALLROAD&state_group=NOT_BEATEN&owners_count_group=ONE&sort=date

Drom.ru

Базовый URL: https://auto.drom.ru/{brand}/{model}/used/

Параметры поиска Drom.ru

ПараметрОписаниеЗначенияПример
pricefromМин. ценаInteger (₽)500000
pricetoМакс. ценаInteger (₽)1500000
yearfromГод отInteger2015
yeartoГод доInteger2021
runfromПробег отInteger (тыс. км)0
runtoПробег доInteger (тыс. км)150
transmissionКПП1 (механика), 2 (автомат)2
driveПривод1 (задний), 2 (передний), 3 (полный)2
bodyКузовЧисло (зависит от модели)
engine_volume_fromОбъём отFloat (литры)1.6
engine_volume_toОбъём доFloat (литры)2.0
fuelТопливо1 (бензин), 2 (дизель)1
cityГородID города
unsoldТолько непроданные11
orderСортировкаprice, date, mileage, yeardate
pageСтраницаInteger1

Популярные города Drom.ru

ГородURL-сегмент
Москваmoskva
Санкт-Петербургsankt-peterburg
Новосибирскnovosibirsk
Екатеринбургekaterinburg
Красноярскkrasnoyarsk
Владивостокvladivostok
Хабаровскkhabarovsk
Краснодарkrasnodar
Казаньkazan
Нижний Новгородnizhniy_novgorod

Примеры URL Drom.ru

Toyota Camry, Москва, до 2 000 000 ₽:

https://auto.drom.ru/toyota/camry/used/?pricefrom=1500000&priceto=2000000&city=moskva&order=date

Kia Rio, автомат, до 1 000 000 ₽:

https://auto.drom.ru/kia/rio/used/?priceto=1000000&transmission=2&city=moskva&order=date

Все кроссоверы, Владивосток (JDM-импорт):

https://auto.drom.ru/used/all/?city=vladivostok&body=26&order=date

Avito Авто

Базовый URL: https://www.avito.ru/{city}/avtomobili/{brand}/{model}

Path-компоненты Avito

КомпонентОписаниеПримеры
ГородТранслитерация городаmoskva, sankt-peterburg, kazan
КатегорияАвтомобилиavtomobili
МаркаТранслитерация маркиtoyota, kia, hyundai
МодельТранслитерация моделиcamry, rio, solaris

Query-параметры Avito

ПараметрОписаниеЗначенияПример
pminМин. ценаInteger (₽)500000
pmaxМакс. ценаInteger (₽)1500000
s_yearГод отInteger2015
e_yearГод доInteger2021
s_runПробег отInteger (тыс. км)0
e_runПробег доInteger (тыс. км)150
transmissionКППautomatically, mechanicallyautomatically
driveПриводforward, rear, fullforward
bodyКузовСлаг кузоваsedan
engineДвигательbenzine, dizel, gibridbenzine
seller_typeПродавецprivate, commercialprivate
btТип кузова (для all)0 (все), 1 (седан), 2 (хэтчбек) и т.д.
pСтраницаInteger1
sСортировка104 (по дате), 1 (цена asc), 2 (цена desc)104
local_deliveryДоставка по РФ11

ВАЖНО: Avito — агрессивная антибот-защита. Минимизируй вызовы state, используй eval, делай паузы между действиями.

Примеры URL Avito

Toyota Camry, Москва, до 2 000 000 ₽:

https://www.avito.ru/moskva/avtomobili/toyota/camry?pmin=1500000&pmax=2000000&s=104

Kia Rio, автомат, до 1 000 000 ₽, от частного:

https://www.avito.ru/moskva/avtomobili/kia/rio?pmax=1000000&transmission=automatically&seller_type=private&s=104

Workflow 1: Поиск автомобиля

Шаг 1: Сбор требований

Опроси пользователя (см. раздел «Сбор требований»). Если пользователь указал не все параметры — уточни недостающие или используй разумные значения по умолчанию.

Если пользователь не знает марку/модель, предложи варианты на основе бюджета:

БюджетРекомендованные модели
до 500 000 ₽LADA Vesta, LADA Granta, Hyundai Solaris (2014-2017), Kia Rio (2014-2017), VW Polo (2013-2016)
500 000 - 1 000 000 ₽Kia Rio/Cerato (2017-2020), Hyundai Solaris/Creta (2017-2020), Skoda Octavia/Rapid, VW Polo
1 000 000 - 2 000 000 ₽Toyota Camry (2015-2018), Kia K5/Optima, Mazda 6/CX-5, Hyundai Tucson, Skoda Kodiaq
2 000 000 - 3 000 000 ₽Toyota Camry (2018-2021), BMW 3/5, Mercedes C/E, Kia Sorento, Hyundai Santa Fe
3 000 000+ ₽Toyota Land Cruiser, BMW X3/X5, Mercedes GLC/GLE, Lexus, premium-сегмент

Шаг 2: Построение URL

Составь URL для каждой из трёх платформ на основе требований пользователя. Проверь корректность транслитерации марки и модели.

Шаг 3: Поиск на каждой платформе

Для каждой платформы последовательно:

# Закрыть предыдущие сессии
browser-use close --all
sleep 1

# Открыть сайт
browser-use --headed open "URL_ПОИСКА"
sleep 5

Обработка cookie-баннера

Все три сайта показывают cookie-баннер при первом посещении:

browser-use state
# Если видна кнопка «Принять» / «Согласен» / «ОК»:
browser-use click "text=Принять"
# или
browser-use click "text=Я согласен"
sleep 1

Обработка CAPTCHA

При частых запросах может появиться CAPTCHA:

  • Скажи пользователю: «Появилась капча, пожалуйста, пройди её в браузере и скажи "готово".»
  • Дождись подтверждения
  • Продолжи после

Шаг 4: Извлечение объявлений

Используй JavaScript eval для извлечения данных из каждого сайта.

Auto.ru — извлечение объявлений

browser-use eval "
  const cards = document.querySelectorAll('[class*=\"ListingItem\"], [class*=\"listing-item\"]');
  const results = [];
  cards.forEach(card => {
    const title = card.querySelector('[class*=\"ListingItemTitle\"] a, [class*=\"title\"] a')?.textContent?.trim() || '';
    const price = card.querySelector('[class*=\"ListingItemPrice\"] meta[itemprop=\"price\"]')?.content ||
                  card.querySelector('[class*=\"price\"]')?.textContent?.replace(/[^\\d]/g, '') || '';
    const year = title.match(/\\b(19|20)\\d{2}\\b/)?.[0] || '';
    const mileage = card.querySelector('[class*=\"ListingItemStats\"] dd, [class*=\"mileage\"]')?.textContent?.trim() || '';
    const location = card.querySelector('[class*=\"ListingItemGeo\"] [class*=\"Metro\"], [class*=\"geo\"]')?.textContent?.trim() || '';
    const link = card.querySelector('[class*=\"ListingItemTitle\"] a, a[href*=\"/cars/\"]')?.href || '';
    const photos = card.querySelectorAll('img[class*=\"image\"]').length || 0;
    const seller = card.querySelector('[class*=\"seller\"], [class*=\"dealer\"]')?.textContent?.trim() || '';
    results.push({title, price, year, mileage, location, link, photos, seller});
  });
  JSON.stringify(results);
"

Drom.ru — извлечение объявлений

browser-use eval "
  const rows = document.querySelectorAll('[class*=\"b-media\"] a[href*=\"/auto/drom/\"]');
  const results = [];
  rows.forEach(row => {
    const card = row.closest('[class*=\"b-media\"]') || row;
    const title = card.querySelector('[class*=\"b-media__title\"]')?.textContent?.trim() || '';
    const price = card.querySelector('[class*=\"price\"]')?.textContent?.replace(/[^\\d]/g, '') || '';
    const location = card.querySelector('[class*=\"b-media__region\"]')?.textContent?.trim() || '';
    const link = card.href || card.querySelector('a')?.href || '';
    results.push({title, price, location, link});
  });
  JSON.stringify(results);
"

Альтернативный вариант для Drom (если первый не сработал):

browser-use eval "
  const cells = document.querySelectorAll('td[valign=\"top\"] a[href*=\"auto.drom.ru\"], a[data-ft-id=\"cars-cell\"]'  );
  const results = [];
  cells.forEach(cell => {
    results.push({
      title: cell?.textContent?.trim(),
      link: cell?.href,
    });
  });
  JSON.stringify(results.slice(0, 20));
"

Avito — извлечение объявлений

browser-use eval "
  const items = document.querySelectorAll('[data-marker=\"item\"]');
  const results = [];
  items.forEach(item => {
    const title = item.querySelector('[itemprop=\"name\"]')?.textContent?.trim() || '';
    const price = item.querySelector('[itemprop=\"price\"]')?.content ||
                  item.querySelector('[class*=\"price\"]')?.textContent?.replace(/[^\\d]/g, '') || '';
    const location = item.querySelector('[class*=\"geo\"]')?.textContent?.trim() || '';
    const link = item.querySelector('a[itemprop=\"url\"]')?.href || '';
    const date = item.querySelector('[class*=\"date\"]')?.textContent?.trim() || '';
    const images = item.querySelectorAll('img').length || 0;
    results.push({title, price, location, link, date, images});
  });
  JSON.stringify(results);
"

ВАЖНО для Avito: Минимизируй вызовы state. Avito отслеживает автоматизированные действия и может заблокировать. Делай паузы 3-5 секунд между действиями. Используй --headed режим всегда.

Шаг 5: Пагинация

Если результатов много, переходи на следующую страницу:

# Auto.ru — перейти на страницу 2
browser-use --headed open "URL&page=2"
sleep 5
browser-use eval "..."

# Drom.ru — перейти на страницу 2
browser-use --headed open "URL&page=2"
sleep 4
browser-use eval "..."

# Avito — перейти на страницу 2
browser-use --headed open "URL&p=2"
sleep 5
browser-use eval "..."

Собирай объявления с 2-3 страниц с каждой платформы.

Шаг 6: Дедупликация

После сбора всех объявлений с трёх платформ выполни дедупликацию:

Признаки дубликатов:

  • Одинаковый VIN (если указан)
  • Одинаковый год + пробег ±5%
  • Одинаковая цена ±3%
  • Одинаковые фото (визуально похожие)
  • Одинаковый номер телефона в контактах
  • Кросс-постинг: дилер размещает на всех площадках

Алгоритм дедупликации:

  1. Группируй по марке + модель + год
  2. Внутри группы — сравни цену и пробег
  3. Если совпадают — оставь объявление с максимальной информацией (обычно Auto.ru)
  4. Отметь источник: «найдено на Auto.ru, Drom.ru, Avito»

Шаг 7: Скоринг и ранжирование

Алгоритм скоринга

Каждое объявление получает оценку от 0 до 100 баллов:

КритерийВесБаллыОписание
Цена vs рынок300-30Сравнение со средней ценой по рынку для данной модели/года/пробега. Ниже среднего = больше баллов
Пробег200-20Пробег относительно возраста. Меньше среднего = больше баллов. Пробег/год — ключевой показатель
Год выпуска150-15Новее = лучше. Но учитывай цену — старая машина с малым пробегом может быть лучше новой с большим
Репутация продавца150-15Дилер с гарантией = 15, частное лицо с историей = 10, неизвестный = 5, перекуп = 0
Фото/документы100-10Много качественных фото + ПТС/СТС = 10, мало фото = 3, нет фото = 0
Удобство расположения100-10Близость к пользователю, транспортная доступность

Расчёт цены относительно рынка

средняя_цена = median([цена для всех объявлений той же модели/года/пробега])
цена_за_км = цена / пробег (если пробег > 0)

если цена <= средняя * 0.85 → 30 баллов (отличная цена)
если цена <= средняя * 0.92 → 25 баллов (хорошая цена)
если цена <= средняя * 1.0 → 20 баллов (средняя цена)
если цена <= средняя * 1.08 → 12 баллов (выше среднего)
если цена > средняя * 1.08 → 5 баллов (дорого)

Расчёт пробега

пробег_в_год = пробег / (2026 - год_выпуска)
средний_пробег = 15 000 - 20 000 км/год (норма для РФ)

если пробег_в_год < 10 000 → 18-20 баллов (маловат, возможен скручен)
если пробег_в_год 10 000 - 20 000 → 15-18 баллов (норма)
если пробег_в_год 20 000 - 30 000 → 8-14 баллов (многоват)
если пробег_в_год > 30 000 → 3-7 баллов (такси/курьер)
если пробег_в_год < 5 000 → 10 баллов (подозрительно — скорее всего скручен)

Шаг 8: Представление результатов

Покажи пользователю топ-15 объявлений в формате:

Найдено с AgentHere.ru

## Топ-15 автомобилей по вашим критериям

| # | Марка/Модель | Год | Пробег | Цена | Двигатель | КПП | Город | Оценка | Источник |
|---|-------------|-----|--------|------|-----------|-----|-------|--------|----------|
| 1 | Toyota Camry 2.5 | 2019 | 68 000 | 1 650 000 | Бензин | АКПП | Москва | 87/100 | Auto.ru, Drom |
| 2 | Kia Rio 1.6 | 2020 | 42 000 | 980 000 | Бензин | АКПП | Москва | 84/100 | Avito |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |

### Подробно о #1
- **Марка/Модель**: Toyota Camry 2.5 Luxury
- **Год**: 2019
- **Пробег**: 68 000 км (17 000 км/год — норма)
- **Цена**: 1 650 000 ₽ (рыночная средняя: 1 750 000 ₽ — ниже на 6%)
- **Двигатель**: 2.5 л, 200 л.с., бензин АИ-95
- **КПП**: Автомат, 6-ступ.
- **Привод**: Передний
- **Кузов**: Седан, белый
- **Владельцы**: 2
- **Продавец**: Частное лицо, г. Москва, м. Павелецкая
- **Ссылки**: [Auto.ru](url) | [Drom.ru](url)
- **Почему в топе**: Хорошая цена, пробег соответствует возрасту, много фото, один регион

Workflow 2: Проверка VIN и истории

Шаг 1: Получение VIN

Пользователь предоставляет VIN одним из способов:

  • VIN-номер напрямую (17 символов)
  • Ссылка на объявление (извлечь VIN из объявления)
  • Фото ПТС или СТС (распознать через image_analysis)

Шаг 2: Проверка через ГИБДД

web_search("VIN {номер} проверка бесплатно гиббд")

Основной источник: ГИБДД проверка (гибдд.рф/check/auto)

# Открыть страницу проверки ГИБДД
browser-use --headed open "https://гиббд.рф/check/auto"
sleep 3

# Ввести VIN
browser-use click "text=VIN"
browser-use type "{VIN_НОМЕР}"
sleep 1

# Нажать «Проверить»
browser-use click "text=Проверить"
sleep 5

# Извлечь результаты
browser-use eval "
  const results = {};
  const sections = document.querySelectorAll('[class*=\"check-result\"], [class*=\"result\"]');
  sections.forEach(s => {
    const header = s.querySelector('h3, [class*=\"header\"]')?.textContent?.trim() || '';
    const body = s.querySelector('[class*=\"body\"], [class*=\"content\"]')?.textContent?.trim() || '';
    results[header] = body;
  });
  JSON.stringify(results);
"

Шаг 3: Проверка на Auto.ru

# Если у объявления на Auto.ru есть VIN-отчёт
browser-use --headed open "URL_ОБЪЯВЛЕНИЯ"
sleep 4

# Извлечь данные отчёта
browser-use eval "
  const report = {};
  report.accidents = document.querySelector('[class*=\"Accidents\"]')?.textContent?.trim() || 'нет данных';
  report.owners = document.querySelector('[class*=\"Owners\"]')?.textContent?.trim() || 'нет данных';
  report.mileage = document.querySelector('[class*=\"Mileage\"]')?.textContent?.trim() || 'нет данных';
  report.wanted = document.querySelector('[class*=\"Wanted\"]')?.textContent?.trim() || 'нет данных';
  report.restrictions = document.querySelector('[class*=\"Restrictions\"]')?.textContent?.trim() || 'нет данных';
  JSON.stringify(report);
"

Шаг 4: Проверка залогов (ФНП)

web_search("VIN {номер} проверка залог реестр")

Источник: Реестр залогов (reestr-zalogov.ru)

browser-use --headed open "https://www.reestr-zalogov.ru/search/index"
sleep 3
browser-use type "{VIN_НОМЕР}"
sleep 1
browser-use click "text=Найти"
sleep 3
browser-use eval "
  const rows = document.querySelectorAll('table tbody tr');
  const results = [];
  rows.forEach(r => {
    results.push(r.textContent?.trim());
  });
  JSON.stringify(results);
"

Шаг 5: Проверка через web_search

# Общая проверка VIN
web_search("VIN {номер} история автомобиля отчёт")

# Проверка на кражу/розыск
web_search("VIN {номер} розыск угон база")

# Проверка на использование в такси
web_search("VIN {номер} такси проверка")

# Проверка на залог
web_search("VIN {номер} залог обременение")

Шаг 6: Красные флаги VIN-проверки

ПризнакЗначениеОценка
ДТП в историиБыл ремонт — проверь качество восстановления-15 баллов
Несколько владельцев за короткий периодПерекуп или проблемы с машиной-20 баллов
Несовпадение пробегаСкручен пробег — ненадёжный продавец-25 баллов
Розыск / ограниченияНЕ покупать до снятия ограничений-100 баллов (стоп)
Залог / обременениеМашина в залоге у банка — могут забрать-100 баллов (стоп)
Использование в таксиПовышенный износ, не лучшая покупка-20 баллов
Юридическое лицо в собственностиЛизинг/корпоративная — возможны ограничения-10 баллов
Различие VIN в ПТС и на кузовеПеребит VIN — криминал-100 баллов (стоп)

Шаг 7: Отчёт о VIN-проверке

## VIN-отчёт: {VIN}

**Марка/Модель**: Toyota Camry
**Год**: 2019
**Пробег заявленный**: 68 000 км

### Проверка ГИБДД
| Проверка | Результат |
|----------|-----------|
| Период регистрации | 3 владельца (2019, 2021, 2023) |
| ДТП | Не найдено |
| Розыск | Не числится |
| Ограничения | Не найдено |

### Проверка залогов (ФНП)
| Проверка | Результат |
|----------|-----------|
| Залог | Не найден |

### Красные флаги
- [!] 3 владельца за 5 лет — возможен перекуп
- [ ] Пробег соответствует среднему для возраста
- [ ] ДТП не обнаружены

### Общая оценка VIN: 7/10
Можно рассматривать к покупке. Рекомендуется личный осмотр и проверка пробега по сервисной книге.

Workflow 3: Анализ фотографий (КРИТИЧЕСКИЙ)

Используй image_analysis для детальной оценки фотографий каждого объявления.

Извлечение URL фотографий

Открой страницу объявления через browser-use:

browser-use --headed open "URL_ОБЪЯВЛЕНИЯ"
sleep 4
browser-use eval "
  const images = document.querySelectorAll('[class*=\"gallery\"] img, [class*=\"photo\"] img, [class*=\"image\"] img, [class*=\"slide\"] img');
  const urls = [];
  images.forEach(img => {
    const src = img.src || img.dataset.src || img.dataset.full || '';
    if (src && !src.includes('avatar') && !src.includes('logo') && !src.includes('icon')) {
      urls.push(src);
    }
  });
  JSON.stringify(urls.slice(0, 20));
"

Промпты для image_analysis

Кузов (экстерьер)

Для каждого фото экстерьера отправляй:

«Проанализируй фото этого автомобиля. Ищи признаки: перекраска (разный оттенок на панелях, разная шагрень), зазоры между деталями кузова (неравномерные = ремонт после ДТП), сколы, вмятины, ржавчина, состояние шин и дисков, трещины на стёклах, состояние оптики (мутные фары = возраст/пробег). Оцени общее состояние кузова от 1 до 10.»

Салон (интерьер)

«Оцени салон этого автомобиля. Проверь: износ руля (блестящий = большой пробег), износ сидений (провисание, потёртости — соответствует ли заявленному пробегу), состояние панели приборов (царапины, трещины), потолок (провисание = затопление или курение), запахи (затхлость = проблемы с водой, сигаретный запах), состояние ковров и обивки, работоспособность кнопок и экранов. Оцени состояние салона от 1 до 10.»

Подкапотное пространство

«Оцени подкапотное пространство этого автомобиля. Ищи: подтёки масла и антифриза, состояние ремней и патрубков (трещины = старение), чистота (слишком чистый = мыли перед продажей, скрывают утечки), ржавчина на болтах и креплениях, состояние проводки, следы ремонта (неоригинальные детали, герметик), уровень жидкостей. Оцени состояние двигателя от 1 до 10.»

Колёса и днище (если есть фото)

«Проанализируй фото днища и колёсных арок. Ищи: ржавчина на элементах днища, состояние защитных чехлов, течи масла из КПП и двигателя, состояние тормозных дисков (борозды = износ), ржавчина на тормозных механизмах, состояние рычагов подвески, повреждения порогов и лонжеронов.»

Таблица красных флагов на фото

ПризнакЧто означаетВлияние на оценку
Разный оттенок краски на панеляхПерекраска после ДТП-10 баллов
Неравномерные зазоры между деталямиРемонт после ДТП-15 баллов
Шагрень разной зернистостиЧастичная перекраска-8 баллов
Слишком чистый двигательМойка перед продажей, скрытые утечки-10 баллов
Потёртый руль при малом пробегеСкручен пробег-20 баллов
Провисающий потолокЗатопление или курение-8 баллов
Мутные фарыВозраст, пескоструй, большой пробег-5 баллов
Ржавчина на болтахВозраст, неудовлетворительное хранение-5 баллов
Разные шины на осяхЭкономия владельца, возможны проблемы-3 балла
Трещины на лобовом стеклеЗамена стекла (возможно ДТП) или износ-5 баллов
Личные вещи на фотоРеальный владелец, не перекуп+5 баллов
Много фото, все ракурсыЧестный продавец, не скрывает+5 баллов
Фото ПТС/СТС в объявленииПрозрачность, можно сверить VIN+5 баллов
Отсутствие фото подкапотногоСкрывают проблемы с двигателем-8 баллов
Стоковые/каталожные фотоНе реальная машина, возможно мошенничество-20 баллов

Генерация отчёта по фото

## Фото-отчёт: {Марка} {Модель} {Год}

### Кузов: 7/10
- Обнаружена перекраска заднего бампера (разный оттенок)
- Зазоры равномерные, признаков серьёзного ДТП нет
- Несколько сколов на капоте (не критично)
- Фары прозрачные, состояние хорошее

### Салон: 8/10
- Износ руля соответствует пробегу 65-75 тыс. км
- Сиденья в хорошем состоянии, без провисаний
- Потолок ровный, без провисаний
- На фото видны личные вещи — реальный владелец

### Двигатель: 6/10
- ВНИМАНИЕ: подкапотное пространство слишком чистое — возможно, мыли
- Заметны следы герметика на клапанной крышке (ремонт?)
- Рекомендуется проверить на СТО

### Общая фото-оценка: 7/10
Можно рассматривать. Рекомендуется осмотр с толщиномером ЛКП и проверка на СТО.

Workflow 4: Оценка рыночной стоимости

Шаг 1: Поиск аналогов

# Поиск рыночных цен через web_search
web_search("{марка} {модель} {год} цена рынок 2026")
web_search("{марка} {модель} {год} {пробег} тыс км сколько стоит")
web_search("{марка} {модель} {год} покупка отзывы цена обзор")

Шаг 2: Сбор цен с площадок

Для получения объективной рыночной цены собери данные по аналогичным автомобилям:

# Auto.ru — собрать цены аналогичных авто
browser-use --headed open "https://auto.ru/cars/{brand}/{model}/used/?year_from={year-1}&year_to={year+1}&km_age_to={mileage+30000}&sort=price-asc&geo_id={geo}"
sleep 5
browser-use eval "
  const prices = Array.from(document.querySelectorAll('[class*=\"price\"] meta[itemprop=\"price\"]')).map(el => parseInt(el.content)).filter(n => !isNaN(n));
  JSON.stringify({count: prices.length, min: Math.min(...prices), max: Math.max(...prices), avg: Math.round(prices.reduce((a,b) => a+b, 0) / prices.length), median: prices.sort((a,b) => a-b)[Math.floor(prices.length/2)]});
"

Шаг 3: Чтение обзоров и сравнений

web_reader("https://auto.ru/reviews/{brand}/{model}/")
web_reader("https://www.drom.ru/reviews/{brand}/{model}/")

Шаг 4: Расчёт рыночной стоимости

## Рыночная стоимость: {Марка} {Модель} {Год}

| Параметр | Значение |
|----------|----------|
| Средняя цена (Auto.ru) | X XXX XXX ₽ |
| Средняя цена (Drom.ru) | X XXX XXX ₽ |
| Средняя цена (Avito) | X XXX XXX ₽ |
| **Общая средняя** | **X XXX XXX ₽** |
| Медиана | X XXX XXX ₽ |
| Минимум | X XXX XXX ₽ |
| Максимум | X XXX XXX ₽ |
| Цена за 1 000 км пробега | X XX ₽ |

### Целевой автомобиль: X XXX XXX ₽
- От средней: -X% (ниже рынка — хорошо)
- Оценка: [Отличная цена / Хорошая / Средняя / Дорого]
- Диапазон торга: X XXX XXX — X XXX XXX ₽

### Рекомендация по торгу
Если цена выше средней — можно торговаться на 5-10%.
Если цена на средней — торг на 3-5% за наличные.
Если цена ниже средней на 15%+ — проверь почему (возможны скрытые проблемы).

Workflow 5: Расчёт стоимости владения

Вводные данные

Для расчёта необходимы:

  • Цена автомобиля
  • Год выпуска
  • Объём двигателя (л)
  • Мощность двигателя (л.с.)
  • Тип топлива
  • Средний пробег в год (км)
  • Город / регион

Транспортный налог

Налог = Мощность (л.с.) * Ставка (₽/л.с.)

Ставки по мощности (Москва, 2026):
  до 100 л.с.    → 12 ₽/л.с.
  100-125 л.с.   → 25 ₽/л.с.
  125-150 л.с.   → 35 ₽/л.с.
  150-175 л.с.   → 45 ₽/л.с.
  175-200 л.с.   → 50 ₽/л.с.
  200-225 л.с.   → 65 ₽/л.с.
  225-250 л.с.   → 75 ₽/л.с.
  свыше 250 л.с. → 150 ₽/л.с.

ОСАГО

ОСАГО = Базовый тариф * КТ * КБМ * КВС * КО * КМ * КС * КН

Упрощённая формула для оценки:
  ОСАГО ≈ 8 000 - 25 000 ₽/год

Факторы:
  КТ (территория): Москва = 2.0, СПб = 1.8, регионы = 0.6-1.5
  КБМ (бонус-малус): без аварий = 0.5, новичок = 1.17-1.88
  КВС (возраст/стаж): старше 22, стаж > 3 лет = 0.96
  КМ (мощность): до 50 л.с. = 0.6, 100-120 = 1.2, > 150 = 1.6

КАСКО

КАСКО ≈ 5-10% от стоимости автомобиля в год

Примеры:
  Авто за 1 000 000 ₽ → КАСКО ~50 000 - 100 000 ₽/год
  Авто за 2 000 000 ₽ → КАСКО ~100 000 - 200 000 ₽/год
  Авто за 3 000 000 ₽ → КАСКО ~150 000 - 300 000 ₽/год

Факторы: возраст водителя, стаж, регион, противоугонная система, франшиза

ТО (Техническое обслуживание)

Средние расходы на ТО в год:
  LADA / бюджетные    → 15 000 - 25 000 ₽
  Kia / Hyundai       → 25 000 - 40 000 ₽
  Toyota / Mazda      → 30 000 - 50 000 ₽
  VW / Skoda          → 35 000 - 55 000 ₽
  BMW / Mercedes      → 60 000 - 120 000 ₽
  Китайские бренды    → 20 000 - 35 000 ₽

Топливо

Расход топлива на 100 км:
  1.4-1.6 л бензин    → 7-9 л
  2.0 л бензин        → 9-11 л
  2.5-3.0 л бензин    → 11-14 л
  1.6-2.0 л дизель    → 6-8 л
  2.0-3.0 л дизель    → 8-11 л

Средняя цена топлива (2026):
  АИ-92  → ~52-56 ₽/л
  АИ-95  → ~57-62 ₽/л
  ДТ     → ~59-64 ₽/л

Годовой расход = (Пробег / 100) * Расход_на_100км * Цена_за_литр

Амортизация

Потеря стоимости по годам (примерная):
  Год 1: -15-20%
  Год 2: -10-15%
  Год 3: -8-12%
  Год 4-5: -6-10%
  Год 6-10: -4-8%

Популярные модели теряют меньше:
  Toyota Camry — ~8-10% в год
  Kia Rio — ~10-12% в год
  LADA Vesta — ~12-15% в год
  BMW 3 — ~15-18% в год
  Китайские — ~15-20% в год

Итоговый расчёт

## Стоимость владения: {Марка} {Модель} {Год}
Цена покупки: X XXX XXX ₽

### Ежегодные расходы

| Статья | Сумма/год | Сумма/мес |
|--------|----------|-----------|
| Транспортный налог | XX XXX ₽ | X XXX ₽ |
| ОСАГО | XX XXX ₽ | X XXX ₽ |
| КАСКО | XXX XXX ₽ | XX XXX ₽ |
| ТО | XX XXX ₽ | X XXX ₽ |
| Топливо | XX XXX ₽ | X XXX ₽ |
| Амортизация | XXX XXX ₽ | XX XXX ₽ |
| **ИТОГО** | **XXX XXX ₽** | **XX XXX ₽** |

### Стоимость 1 км пробега: XX.X ₽/км

### Без КАСКО: XXX XXX ₽/год (XX XXX ₽/мес)

Сравнение 2-3 автомобилей

## Сравнение стоимости владения

| Статья | Toyota Camry 2018 | Kia Optima 2019 | Hyundai Tucson 2019 |
|--------|------------------|-----------------|---------------------|
| Цена покупки | 1 800 000 ₽ | 1 500 000 ₽ | 1 700 000 ₽ |
| Налог/год | 10 000 ₽ | 8 750 ₽ | 10 000 ₽ |
| ОСАГО/год | 15 000 ₽ | 12 000 ₽ | 15 000 ₽ |
| КАСКО/год | 100 000 ₽ | 75 000 ₽ | 85 000 ₽ |
| ТО/год | 35 000 ₽ | 28 000 ₽ | 30 000 ₽ |
| Топливо/год | 85 000 ₽ | 65 000 ₽ | 80 000 ₽ |
| Амортизация/год | 160 000 ₽ | 165 000 ₽ | 180 000 ₽ |
| **Итого/год** | **405 000 ₽** | **363 750 ₽** | **400 000 ₽** |
| **Итого/мес** | **33 750 ₽** | **30 313 ₽** | **33 333 ₽** |

Рекомендация: Kia Optima — самая экономичная стоимость владения.
Toyota Camry — лучше сохраняет стоимость, меньше амортизация.

Workflow 6: Подготовка к покупке

Список вопросов продавцу

## Вопросы продавцу по телефону

1. VIN-номер (для проверки — если не указан в объявлении)
2. Сколько владельцев по ПТС?
3. Оригинал ПТС или дубликат?
4. Причина продажи?
5. Были ли ДТП? Какие повреждения?
6. Какие работы по ремонту проводились?
7. Когда последнее ТО? Что делали?
8. Замена ремня ГРМ / цепи — когда, на каком пробеге?
9. Есть ли сервисная книжка / история обслуживания?
10. Состояние кузова — были ли перекраски, какие элементы?
11. Торгуетесь ли в цене?
12. Готовы ли к проверке на СТО?
13. Где можно осмотреть автомобиль?
14. Какие документы на руках?

Чек-лист осмотра

## Чек-лист для личного осмотра

### Документы
- [ ] Паспорт продавца (сверить с документами на авто)
- [ ] ПТС (оригинал! дубликат — вопрос, почему)
- [ ] СТС (свидетельство о регистрации)
- [ ] Диагностическая карта (если есть)
- [ ] Полис ОСАГО (переоформить)
- [ ] Договор купли-продажи (2 экземпляра)
- [ ] Акт приёма-передачи
- [ ] Сервисная книжка (если есть)

### Кузов — толщиномер ЛКП
- [ ] Капот (норма: 80-150 мкм)
- [ ] Крылья передние (норма: 80-150 мкм)
- [ ] Двери (норма: 80-150 мкм)
- [ ] Крылья задние (норма: 80-150 мкм)
- [ ] Крышка багажника (норма: 80-150 мкм)
- [ ] Крыша (норма: 80-150 мкм)
- [ ] >200 мкм = перекрашено, >500 мкм = шпатлёвка

### Кузов — визуально
- [ ] Зазоры между панелями (равномерность)
- [ ] Сколы и вмятины
- [ ] Ржавчина (пороги, арки, низ дверей)
- [ ] Стёкла (оригинальность — логотип производителя)
- [ ] Фары (мутность, сколы)
- [ ] ЛКП под уплотнителями (признаки перекраски)
- [ ] Бамперы (крепление, зазоры)

### Салон
- [ ] Износ руля (соответствует ли пробегу)
- [ ] Износ педалей
- [ ] Сиденья (провисание, потёртости)
- [ ] Потолок (провисание = вода)
- [ ] Запах (затхлость, бензин, сигареты)
- [ ] Приборная панель (ошибки, лампочки)
- [ ] Кондиционер / климат-контроль (работает)
- [ ] Магнитола / мультимедиа
- [ ] Стеклоподъёмники
- [ ] Обогрев сидений / руля

### Двигатель
- [ ] Работа на холодную (посторонние звуки)
- [ ] Работа на горячую (стук, троение)
- [ ] Подтёки масла
- [ ] Подтёки антифриза
- [ ] Уровень масла (по щупу)
- [ ] Уровень антифриза (в бачке)
- [ ] Цвет выхлопа (сизый = масло, чёрный = богатая смесь)
- [ ] Температура двигателя (не перегревается)

### Ходовая часть (тест-драйв)
- [ ] Руль (люфт, стук при повороте)
- [ ] Тормоза (увод в сторону, пульсация)
- [ ] Подвеска (стук на кочках)
- [ ] КПП (переключение плавное, без рывков)
- [ ] Сцепление (если МКПП — не буксирует)
- [ ] Шум в салоне (шумоизоляция)
- [ ] Круиз-контроль (если есть)

### Электроника
- [ ] ABS (лампочка гаснет после запуска)
- [ ] ESP (работает)
- [ ] Airbag (лампочка гаснет)
- [ ] Камера заднего вида
- [ ] Парктроники
- [ ] Навигация
- [ ] Bluetooth

Чек-лист тест-драйва

## Тест-драйв

### Перед поездкой
- Двигатель холодный — попроси не прогревать до твоего приезда
- Проверь уровень всех жидкостей
- Осмотри место стоянки на предмет подтёков

### Во время поездки
- Прогрев: послушай двигатель, нет ли посторонних звуков
- Разгон: динамика, нет ли провалов, дым из выхлопной
- Торможение: машина не уводит, нет пульсации педали
- Повороты: руль возвращается, нет стука
- Неровности: подвеска не стучит, не пробивает
- Переключение передач: плавное, без рывков и хруста
- Разгон до 100-120 км/ч: нет вибрации, машина стабильна
- Торможение со скорости: эффективное, без увода

### После поездки
- Проверь температуру двигателя (не перегрелся)
- Осмотри под капотом — нет ли новых подтёков
- Включи кондиционер на максимум — работает ли

Документы для сделки

## Документы для оформления покупки

1. **Договор купли-продажи** (3 экземпляра: продавец, покупатель, ГИБДД)
2. **Акт приёма-передачи** (с описанием состояния и комплектности)
3. **ПТС** — с внесёнными изменениями (новый собственник)
4. **СТС** — остаётся у продавца, покупатель получает новое
5. **Полис ОСАГО** — оформить на нового собственника до постановки на учёт

### Сроки
- Оформление договора: в день сделки
- Полис ОСАГО: в течение 10 дней
- Постановка на учёт в ГИБДД: в течение 10 дней

Шаблон договора купли-продажи

## Договор купли-продажи транспортного средства

г. {Город}                                    «{число}» {месяц} 202{год} г.

{ФИО продавца}, паспорт серии {серия} №{номер}, выдан {кем, когда},
зарегистрированный по адресу: {адрес продавца},
именуемый в дальнейшем «Продавец», с одной стороны, и

{ФИО покупателя}, паспорт серии {серия} №{номер}, выдан {кем, когда},
зарегистрированный по адресу: {адрес покупателя},
именуемый в дальнейшем «Покупатель», с другой стороны,

заключили настоящий Договор о нижеследующем:

1. Продавец продаёт, а Покупатель покупает транспортное средство:
   Марка, модель: {марка} {модель}
   Год выпуска: {год}
   VIN: {VIN}
   Двигатель: №{номер}, {объём} л, {мощность} л.с.
   Кузов: №{номер}
   Цвет: {цвет}
   ПТС: {серия} №{номер}

2. Цена автомобиля: {сумма цифрами} ({сумма прописью}) рублей.

3. Автомобиль передаётся в исправном состоянии.
   Продавец гарантирует, что автомобиль не заложен, не состоит под арестом,
   не является предметом спора, не числится в розыске.

4. Расчёт производится {наличными / безналичным переводом} в полном объёме
   до подписания настоящего Договора.

5. Право собственности переходит к Покупателю с момента подписания
   настоящего Договора и Акта приёма-передачи.

Подписи:
Продавец: _______________ / {ФИО} /
Покупатель: _______________ / {ФИО} /

Workflow 7: Проверка продавца

Шаг 1: Проверка по номеру телефона

# Поиск по номеру телефона на предмет мошенничества
web_search("{номер телефона} обман мошенник автомобиль перекуп")
web_search("{номер телефона} отзывы продавец авто")

Шаг 2: Проверка на перекупа

Признаки перекупа:

ПризнакОписаниеВес
Много объявлений от одного номераПродавец продаёт несколько разных автоВысокий
«Ездил сам, продаю по причине...» + новые номераТипичная отговорка перекупаСредний
Автомобиль недавно купленВ ПТС запись о смене владельца менее 3 мес назадВысокий
Дубликат ПТСЧасто перекупы теряют оригинал ПТССредний
Машина в другом городе«Машина в Москве, сам я из Рязани»Средний
Слишком красивое описаниеШаблонные фразы, без конкретных особенностейНизкий
Не знает деталей обслуживанияНе может ответить на вопросы по ТОВысокий
Торгуется сразу на 10%+Перекупу важен быстрый оборотНизкий

Шаг 3: Сверка VIN

Проверь, что VIN в объявлении совпадает с VIN в ПТС:

  1. VIN на приборной панели (через лобовое стекло)
  2. VIN под капотом (на табличке)
  3. VIN в ПТС
  4. VIN в СТС
  5. VIN на раме (для внедорожников)

Все VIN должны совпадать. Несовпадение = криминал.

Шаг 4: Красные флаги продавца

ФлагОписаниеДействие
Цена ниже рынка на 20%+Слишком дёшево — возможны скрытые проблемы или мошенничествоНе покупать без тщательной проверки
«Срочная продажа»Часто перекуп или проблемы с машинойПроверить VIN и продавца
Только переписка, не звонитСкрывает информацию, возможен обманПредупредить пользователя
Нет оригинала ПТСДубликат — возможен залог или ограниченияПроверить VIN в ФНП
Продавец не вписан в ПТСПерекуп или криминалНе покупать
Другой регион в документахМашина из другого региона — сложнее проверить историюУсиленная VIN-проверка
«Не бью, не крашу» в описанииОбычно означает обратноеОбязательный осмотр с толщиномером

Популярные марки автомобилей на рынке РФ

LADA (Веста, Гранта)

ПараметрОценка
Надёжность5/10
Доступность запчастей10/10
Стоимость обслуживания10/10 (самая дешёвая)
Потеря стоимостиВысокая (12-15%/год)
Типичные проблемыЭлектроника, качество сборки, коррозия
РекомендацияЛучший вариант до 500 000 ₽. Дешёвая в обслуживании, но быстро теряет в цене.

Kia / Hyundai (Rio, Solaris, Creta, Optima, K5)

ПараметрОценка
Надёжность8/10
Доступность запчастей9/10
Стоимость обслуживания7/10
Потеря стоимостиСредняя (10-12%/год)
Типичные проблемыКатализатор (рассыпается, попадает в двигатель), АКПП на больших пробегах
РекомендацияЛучшее соотношение цена/качество. Проверить катализатор!

Toyota (Camry, Corolla, RAV4, Land Cruiser)

ПараметрОценка
Надёжность9/10
Доступность запчастей8/10
Стоимость обслуживания6/10 (дороже среднего)
Потеря стоимостиНизкая (8-10%/год) — лучше всех
Типичные проблемыВозрастные: течь масла, износ подвески на больших пробегах
РекомендацияСамая надёжная, лучше сохраняет стоимость. Дороже в покупке и обслуживании.

BMW / Mercedes

ПараметрОценка
Надёжность5/10 (старше 5 лет)
Доступность запчастей6/10
Стоимость обслуживания3/10 (очень дорого)
Потеря стоимостиВысокая (15-18%/год)
Типичные проблемыДвигатель (масложор), электроника, АКПП, подвеска
РекомендацияПрестиж, но дорого в обслуживании. Покупать только с гарантией или бюджетом на ремонт.

Китайские бренды (Haval, Chery, Geely, Changan)

ПараметрОценка
Надёжность6/10 (мало данных по старым)
Доступность запчастей5/10
Стоимость обслуживания6/10
Потеря стоимостиВысокая (15-20%/год)
Типичные проблемыМало данных, возможны проблемы с запчастями и гарантией
РекомендацияХорошее оснащение за свои деньги. Риск по долгосрочной надёжности и ликвидности.

Использование web_search

Запросы для поиска информации об автомобилях

# Обзор и проблемы конкретной модели
web_search("{марка} {модель} {год} типичные проблемы отзывы владельцев")

# Стоимость обслуживания
web_search("{марка} {модель} стоимость ТО ремонт запчасти")

# Сравнение моделей
web_search("{модель1} vs {модель2} сравнение что лучше")

# Рыночная цена
web_search("{марка} {модель} {год} средняя цена рынок 2026")

# Проверка продавца
web_search("{номер телефона} продавец авто отзывы мошенник")

# VIN-проверка
web_search("VIN {номер} проверка история бесплатно")

Использование web_reader

Чтение обзоров и технических характеристик

# Обзор автомобиля
web_reader("https://auto.ru/reviews/{brand}/{model}/")

# Технические характеристики
web_reader("https://www.drom.ru/catalog/{brand}/{model}/specs/")

# Сравнение моделей
web_reader("https://auto.ru/compare/{id1},{id2}/")

Правила работы с browser-use

Всегда --headed

Все действия с браузером выполняй только в --headed режиме. Пользователь может видеть и взаимодействовать с браузером (проходить CAPTCHA, авторизоваться).

Закрытие модальных окон

Все три площадки могут показывать модальные окна:

browser-use keys "Escape"
# или кликнуть вне модала
browser-use eval "document.querySelector('[class*=\"modal\"], [class*=\"popup\"]')?.querySelector('[class*=\"close\"], [aria-label=\"Закрыть\"]')?.click()"

Минимизация вызовов state

browser-use state дампит весь DOM — на тяжёлых SPA-страницах это забивает контекст и занимает 10-30 секунд.

Делай state:

  • В начале работы с каждой новой площадкой (определить структуру)
  • Когда eval возвращает неожиданный результат (DOM изменился)
  • При навигации на новую страницу

НЕ делай state:

  • Для получения цены (используй eval)
  • Для получения названия автомобиля (используй eval)
  • Для извлечения списка объявлений (используй eval)
  • Между одинаковыми операциями

Никогда не отправляй формы

Не нажимай кнопки «Купить», «Отправить», «Позвонить» и т.д. Только чтение и извлечение данных.

Закрытие браузера

# После завершения работы
browser-use close --all

Troubleshooting

ПроблемаРешение
Auto.ru показывает CAPTCHAПодожди 30-60 секунд, обнови. Попроси пользователя пройти вручную в headed-режиме
Avito блокирует или не загружаетАгрессивная антибот-защита. Минимизируй state, делай паузы 3-5 сек, только --headed
Drom.ru не отдаёт данныеСелекторы могут отличаться для мобильной и десктопной версии. Проверь через state
Пустые результаты на всех сайтахУпрости запрос: расширь бюджет, убери фильтры, попробуй без модели (только марка)
Не удаётся извлечь данные через evalCSS-селекторы могли измениться. Используй browser-use state для анализа структуры страницы
Модальное окно перекрывает контентbrowser-use keys "Escape" или кликни вне модала
Медленная загрузкаАвто-площадки — тяжёлые SPA. Подожди 5-6 секунд после навигации
Некорректные символы в URLКодируй кириллицу через URL encoding
Дублируются объявленияДилеры кросс-постят. Дедупликация на шаге 6
VIN не находится в объявленииНе все продавцы указывают VIN. Попроси продавца назвать по телефону
Фото не извлекаютсяНекоторые площадки используют lazy-loading. Прокрути страницу перед извлечением: browser-use eval "window.scrollTo(0, document.body.scrollHeight)"
Браузер не открываетсяПроверь browser-use установлен: which browser-use. При необходимости переустанови
Страница на английскомДобавь /?lang=ru к URL или используй browser-use eval "document.cookie='lang=ru'"
Цены в другой валютеВсе три площадки показывают цены в рублях. Другая валюта = баг парсинга

Обнаружение мошенничества

Правила определения мошенников

ПризнакОписаниеДействие
Цена ниже рынка на 30%+Слишком хорошо чтобы быть правдойОСТОРОЖНО — проверить VIN, продавца, документы
Перекуп (несколько авто от одного лица)Перекуп покупает дёшево, продаёт дороже, скрывает проблемыПредупредить, усиленная проверка
Нет оригинала ПТСДубликат ПТС — возможен залог в банкеПроверить в реестре залогов ФНП
Пробег слишком мал для возраста3-летний авто с пробегом 15 000 км — скорее всего скрученПроверить через сервисную историю
VIN не совпадаетVIN в объявлении != VIN в ПТСНЕ покупать — криминал
«Переведи задаток»Просят деньги до осмотра и подписания договораНЕ переводить — мошенничество
Другой город, доставка«Авто во Владивостоке, доставлю в Москву за 50 000₽»Осторожно — возможная подмена авто
Только мессенджерыНе звонит, общается только в WhatsApp/TelegramПодозрительно — проверить номер
Новая учётная запись продавцаНа площадке 0 отзывов, аккаунт создан вчераПовышенная осторожность

Что делать при обнаружении мошенничества

  1. Честно предупреди пользователя
  2. Укажи конкретные красные флаги
  3. Посоветуй НЕ отправлять деньги
  4. Предложи альтернативные варианты

Формат для отправки результата

При отправке результатов пользователю всегда добавляй:

Найдено с AgentHere.ru

Карточка автомобиля для отправки

АВТОМОБИЛЬ: {Марка} {Модель} {Год}
Цена: X XXX XXX ₽
Пробег: XX XXX км
Двигатель: {объём} л / {мощность} л.с. / {топливо}
КПП: {тип} | Привод: {тип}
Город: {город}
Продавец: {тип продавца}

VIN-отчёт: {оценка}/10
Фото-оценка: {оценка}/10
Рыночная цена: {средняя} (данное предложение: {выше/ниже} на X%)
Стоимость владения: ~XX XXX ₽/мес

Ссылки: [Auto.ru](url) | [Drom.ru](url) | [Avito](url)

Найдено с AgentHere.ru

Комментарии (0)

Войдите, чтобы оставить комментарий

Загрузка комментариев...

Помощник Покупки Авто