Smart Scrape — контент страницы одним запросом

Передайте URL — получите типизированный источник, Markdown, ссылки или SEO-данные. Сервис сам выбирает самый дешёвый способ: кэш, сохранённая копия из поискового кэша, прямой HTTP — и только при необходимости headless-браузер.

Один эндпоинт вместо связки «запросить — отрендерить — очистить — конвертировать». Каскад стратегий добывает документ самым дешёвым доступным способом, а поле contentKind говорит, что именно пришло: очищенный HTML, либо точный исходник JSON, XML или текста. Поля strategy и attempted показывают, какой путь сработал.

Возможности

Каскад стратегий

Общий 12-часовой кэш документов → сохранённая копия из поискового кэша → прямой HTTP → headless Chromium. Каждый уровень пробуется только если предыдущий не дал пригодный документ.

Типизированный источник

Поле contentKind (html / json / xml / text / pdf / spreadsheet) присваивается в момент получения ответа. HTML приходит очищенным, JSON, XML и текст — точным исходником, PDF и таблицы — извлечённым текстом.

Готовые форматы

Markdown для LLM, список ссылок, SEO-данные (title, canonical, заголовки, JSON-LD), скриншот и PDF — в одном запросе, без отдельного пайплайна.

Честная тарификация

Кэш, сохранённая копия и прямой HTTP — 10 ₽ за 1000. Запуск Chromium — 100 ₽ за 1000, и только когда он действительно понадобился. Уровень виден по ответу.

Свежесть под контролем

Cache-Control: no-cache пропускает кэши и идёт сразу к источнику; заголовок X-Cache показывает HIT, MISS или BYPASS. Свежий результат обновляет кэш для следующих запросов.

Прозрачные неудачи

Если документ добыть не удалось — HTTP 200 с ok: false, диагностическим message и статусом, заголовками и редиректами последней попытки. Ничего не приходится угадывать.

Пример запроса

curl -X POST "https://proxy.unoapi.ru/v1/browser/smart-scrape?timeout=30000" \
  -H "Authorization: Bearer sk_..." \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "formats": ["content", "markdown"]}'

Сравнение

ПараметрУноАПИ.ruМеждународные сервисы
Типизированный источник✓ contentKind: html / json / xml / textОбычно только HTML → Markdown
Каскад перед браузером✓ кэш → поисковый кэш → HTTPОбычно сразу рендер
Сохранённая копия из поискового кэша
Цена без браузера10 ₽ / 1000Единая цена за рендер
Markdown / ссылки / SEO✓ в одном запросеЗависит от вендора
ОплатаРубли, по фактуUSD, подписка

Часто задаваемые вопросы

За что именно я плачу?

Запрос, закрытый кэшем, сохранённой копией из поискового кэша или прямым HTTP, стоит 10 ₽ за 1000. Если понадобился запуск Chromium — 100 ₽ за 1000, включая неудачную попытку рендера. Уровень определяет сервис по ходу каскада, выбрать или подделать его в запросе нельзя.

Что означает поле contentKind?

Как читать content: html — очищенный HTML после извлечения, json / xml / text — точный исходник без очистки, pdf и spreadsheet — текст, извлечённый из файла. Ветвиться нужно по contentKind, а не по Content-Type. Поле возвращается всегда, когда документ получен.

А PDF и Excel-файлы?

Да. Для PDF возвращается извлечённый текстовый слой (contentKind: pdf), для xlsx и xls — данные листов в CSV (contentKind: spreadsheet), а markdown отдаёт их как таблицы. Файлы до 10 МиБ, всё на дешёвом уровне без запуска браузера. Скан без текстового слоя честно вернёт ok: false с пояснением.

Что вернётся для JSON API?

Точный исходник ответа с contentKind: json — без обёрток и переформатирования, большие числа и порядок ключей сохраняются. Markdown при этом — тот же исходник в код-блоке.

Как получить гарантированно свежие данные?

Отправьте заголовок Cache-Control: no-cache — запрос пропустит кэш ответов и кэш документов и пойдёт сразу к источнику. В ответе будет X-Cache: BYPASS, а свежий результат обновит кэш.

Можно ли получить скриншот или PDF?

Да, форматы screenshot и pdf. Визуальные форматы идут сразу в браузер и тарифицируются по browser-уровню; PNG и PDF приходят в base64 внутри JSON-ответа.

Это совместимо с Browserless Smart Scrape?

Запросы — да: формат html принимается как псевдоним content, поле proxy игнорируется. Ответ — надмножество Browserless: добавлено обязательное поле contentKind, по которому нужно ветвиться. Одно отличие: content для HTML-документов приходит очищенным, а не сырым. В документации есть короткая инструкция по миграции.

Сколько стоит один запрос?

Актуальные цены — на /pricing: 10 ₽ за 1000 запросов без браузера, 100 ₽ за 1000 с запуском Chromium. Есть ежемесячные бесплатные кредиты.

Готовы попробовать?

Бесплатные месячные кредиты — без карты, без подписки.