Documents & Calculations

Извлечение данных и OCR

Извлечение таблиц из PDF, OCR отсканированных документов и структурирование данных через Python в песочнице: распознавание текста, разбор счетов и актов, выгрузка результатов в CSV или Excel.

Skill instructions

Извлечение данных и OCR

Этот skill содержит паттерны Python-кода для извлечения данных из документов в облаке. Загруженные файлы доступны в /tmp/.

Доступные библиотеки

Всё перечисленное уже стоит в образе облака:

  • pdfplumber: извлечение таблиц и текста из PDF
  • pdf2image: конвертация PDF в изображения
  • Pillow: обработка изображений
  • openpyxl: создание Excel-файлов
  • pandas: обработка табличных данных

Набор образа фиксирован, и pip install его не расширяет (почему так не добыть pytesseract, сказано в БЛОКЕ 2).

БЛОК 2: Сканы и изображения

Распознаёт платформа, а не код в ячейке. pytesseract в облаке нет и добыть его нельзя: pip кладёт только обёртку, системного бинаря tesseract в образе не существует, и вызов упадёт TesseractNotFoundError уже после «успешной» установки. Ниже маршрут, который работает.

Шаг 1: проверь, распознано ли уже

Текст документа с текстовым слоем (PDF, DOCX, XLSX) платформа разбирает до первого ответа: он стоит в строке вложения вместе с отметкой полноты. У картинки текстового маршрута нет: её читает только analyze. Смотри строку вложения прежде, чем запускать OCR. В ячейке repl_execute те же вложения лежат в documents:

Текст на месте: распознавать нечего, иди сразу в БЛОК 4 (структурирование).

Пусто или PDF-скан? Вызывай инструмент:

  • document_ids: id документа из строки вложения (предпочтительно, стабилен между сессиями; в ячейке repl_execute тот же id лежит в documents[i]["id"]) либо путь из той же строки. Путь не конструируй сам и не переноси из прошлой сессии.
  • До 10 документов за вызов, распознаются параллельно.
  • pages=[1, 2, 3]: только для PDF и только когда документ один. Без pages PDF больше 50 страниц-сканов не примет: режь на диапазоны страниц.
  • Форматы: .png, .jpg, .jpeg, .pdf. Всё остальное не картинка: его текст уже стоит в строке вложения.
  • Распознанный текст закрепляется за документом, ответ инструмента несёт его начало и отметку полноты: повторный вызов на тот же документ вернёт сохранённое, не распознавая заново, а на следующем ходу текст стоит в строке вложения (в ячейке repl_execute: documents[i]["text"]).

Предобработка (контраст, бинаризация, шумодав) не нужна: это рецепт для tesseract, а не для распознавания, которое делает платформа. Координат блоков и рамок слов этот маршрут не отдаёт: нужен разбор геометрии страницы, задавай вопрос об изображении через analyze(kind="describe", question=…).

Шаг 3: разбор уже в облаке

Дальше работает обычный код: текст из ответа инструмента (в ячейке repl_execute также documents[i]["text"]) обрабатывается паттернами БЛОКА 4 (реквизиты, суммы, даты) и БЛОКА 6 (экспорт в Excel).

БЛОК 4: Структурирование данных

Паттерн: Дата заключения договора и срок оплаты

Для электронных договоров датой заключения обычно считается дата подписания ЭЦП последней стороной (она может отличаться от даты в шапке): тогда base_iso бери из даты ЭЦП, а не из find_contract_date. find_payment_term различает «рабочих» и «календарных» дней; payment_deadline считает рабочие дни через add_business_days.

Не форматируй даты через strftime с локалью. date.strftime("%d.%m.%Y", "ru") падает с TypeError: strftime() takes at most 1 argument (2 given): у date/datetime метод принимает только строку формата. Русский день недели бери из RU_WEEKDAYS[d.weekday()], а не из strftime("%A").

БЛОК 5: Работа с входными файлами

Паттерн: несколько сканов сразу

Пачка идёт одним вызовом инструмента (лимиты в БЛОКЕ 2, шаг 2):

id берутся из строк вложений, больше десяти режь на партии по 10. Собирать распознанное в ячейке не нужно: текст закреплён за каждым документом.

БЛОК 7: Комбинированные сценарии

Задача: PDF скан → OCR → Таблица в Excel

Шаг 1: распознавание инструментом (БЛОК 2):

Шаг 2: разбор в ячейке:

БЛОК 8: Типичные команды пользователя

КомандаДействие
"Извлеки таблицы из PDF"БЛОК 1: Извлечение всех таблиц
"Распознай скан"БЛОК 2: сначала текст в строке вложения, затем analyze(kind="ocr")
"Вытащи текст из PDF"БЛОК 3: Извлечение текста
"Найди реквизиты в документе"БЛОК 4: Парсинг реквизитов
"Переведи скан в Excel"БЛОК 7: PDF скан → OCR → Excel
"Извлеки суммы и даты"БЛОК 4: Извлечение сумм и дат
"Обработай несколько файлов"БЛОК 5: Batch-обработка

Skill-файл содержит паттерны кода для извлечения данных из документов. Код с documents выполняется в ячейке repl_execute: в sandbox_bash этого имени нет.

Similar skills

Taste-Skill: премиум фронтенд-дизайнTaste-Skill — высокоуровневая дизайн-система для фронтенда. Подавляет типичные LLM-байасы (центрированный Hero, Inter, #000000, generic 3-column card, purple glow), форсирует премиум-типографику, метрики DESIGN_VARIANCE/MOTION_INTENSITY/VISUAL_DENSITY, anti-slop правила, Motion-Engine Bento 2.0. Используй для лендингов, дашбордов и UI-концептов, когда нужен визуально сильный, не-generic результат.Анализ CommerceML (обмен 1С с сайтом)Парсинг и анализ XML CommerceML 2.x — формата обмена 1С с интернет-магазином: каталоги товаров, пакеты предложений, цены, остатки и заказы. Сверка выгрузок и диагностика ошибок импорта.Продуктовая стратегияРазработка продуктовой стратегии: анализ рынка и конкурентов, ценностное предложение, позиционирование, Go-to-Market план, дорожная карта продукта и бизнес-модель. Для основателей, продакт-менеджеров и команд роста.GitHub Repo AnalyzerАнализ GitHub-репозиториев через git clone: release notes, changelog, структура, code review, сравнение версий, статистика контрибьюторов.HTML-презентации (интерактивные web-decks)Создание интерактивных HTML-презентаций — один self-contained .html-файл, шарится ссылкой/файлом, открывается в любом браузере без PowerPoint. 6 тем, 10 layout-ов, CSS+canvas-анимации, presenter-mode по клавише S. Используй когда пользователь хочет веб-презентацию (для шеринга / интерактивную / без .pptx).P&L, финмодель и финансовый анализОтчёт о прибылях и убытках (P&L), маржинальность, EBITDA, рентабельность, ROE/ROA/ROIC, unit-экономика (LTV, CAC, Churn), финансовое моделирование, DCF и оценка стоимости бизнеса (прогноз FCF, терминальная стоимость, чувствительность), план-факт анализ, отраслевые бенчмарки — полный цикл финансового анализа для российского рынка 2026
Platform
Samreshuuu

Try this skill

Sign up and use the "Извлечение данных и OCR" skill for free.