Які торгові майданчики ви підтримуєте?
10 вбудованих пресетів, що src/presets/builtin/ найбільших джерел даних: amazon_product (us, uk, de, fr, jp), amazon_search (us, uk, de), ebay_search (США, Велика Британія, Німеччина), walmart_product (США), google_search (США, Велика Британія, Німеччина, Франція, Росія, Японія), google_shopping (США, Велика Британія, Німеччина), bing_search (США, Велика Британія, Німеччина, Франція, Росія, Японія), yandex_search (США, Велика Британія, Німеччина, Франція, Росія, Японія), youtube_video (у всьому світі), linkedin_profile (у всьому світі, вимагає session_id). Потрібно щось інше? Використовуйте POST /api/v1/presets/generate з прикладом URL-адреси — LLM визначить схему та згенерує селектори за вас.
Наскільки стабільною є схема?
Однакова форма полів у всіх регіонах та пресетах — amazon_product у доменах .us, .uk, .de, .fr, .jp всі повертають однакові ключі (валюта локалізована, структура незмінна). Необов’язкові поля явно допускають нульові значення, тому відсутність значень ніколи не порушить роботу вашого парсера. Коли торговельна платформа змінює макет, функція самовідновлення LLM миттєво перегенерує селектор (вкажіть llm: {model: "..."} у запиті) — конвеєр продовжує працювати з self_heal: true прапорцем у відповіді. Зміни, що порушують сумісність, випускаються лише у другорядних версіях із примітками щодо міграції в CHANGELOG.md.
Чи можна збирати дані з Amazon / eBay / Walmart?
Так — усі три пресети є першокласними, додаткового налаштування не потрібно. Amazon підтримує 5 регіональних локалізацій (us, uk, de, fr, jp) для сторінок детальної інформації про товар (PDP) та пошуку; eBay — для пошуку в us/uk/de; Walmart .us — для сторінок товарів. Кожен з них повертає JSON-дані однакового формату: title, price, currency, in_stock, rating, seller, а також специфічні для торговельних майданчиків поля, якщо вони є (ASIN, переможець Buy Box, позначка спонсорованого товару). Для даних, прив’язаних до облікового запису, що знаходяться за межами входу (ціни Prime, партнерські портали), використовуйте API Sessions і передайте session_id разом із запитом.
Як швидко я зможу отримати перші дані?
Приблизно 5 хвилин від початку до кінця. git clone + docker compose up -d запускає скрейпер в режимі онлайн за ~30 секунд (Docker завантажує образ один раз). Спочатку curl POST /api/v1/scrape/preset/page повертає структурований JSON за 1–3 секунди для кешованих локалей, до 5–8 секунд при першому запуску. Ніякої реєстрації, ніякого створення API-ключа, ніякого обліку SaaS — ви звертаєтеся до кінцевої точки localhost:8000 в той самий момент, коли контейнер готовий до роботи.
Чи використовуєте ви проксі-сервери та засоби захисту від ботів?
Так. Скрейпер інтегрується з CyberYozh App Proxy за допомогою CYBERYOZH_API_KEY — 5 типів проксі у 250 країнах (побутові ротаційні / стаціонарні, мобільні 4G/5G, дата-центри, провайдери). Захист від ботів забезпечується прихованою збіркою Chromium із «теплим» відбитком, відповідним побутовим проксі та природною динамікою дій — більшість потоків повністю обходять CAPTCHA. Якщо CAPTCHA все ж з’являється, скрейпер повертає її як структуровану помилку, а не вирішує її непомітно. Практичне правило: ротаційні резидентні проксі для скрейпінгу в масштабах каталогів, мобільні — для зон з агресивним захистом від ботів або завдань, пов’язаних з конкретними обліковими записами.