nezdraviy/practice

EasyOCR + FastAPI Autonomous OCR Service

1

stars

71

commits

Python

primary language

May 19, 2025

updated

README

OCR‑PDF

Описание

Небольшой локальный сервис на FastAPI, который позволяет:

  • Загружать PDF-документы
  • Преобразовывать страницы в изображения
  • Распознавать текст с помощью EasyOCR / PyMuPDF
  • Выгружать результат в формате TXT и JSON

Проект готов к развёртыванию на Windows, Linux и macOS без дополнительных зависимостей помимо Python.


Требования

  • Python 3.9+
  • Git

Все зависимости указаны в requirements.txt.


Установка

# Клонировать репозиторий
git clone https://github.com/<username>/practice-main.git
cd practice-main

# Создать виртуальное окружение
python -m venv venv

# Активировать окружение
# Windows:
venv\Scripts\activate.bat
# Linux/macOS:
source venv/bin/activate

# Установить зависимости
pip install --upgrade pip
pip install -r requirements.txt

Конфигурация

Файл .env поддерживает две переменные:

# использовать GPU для EasyOCR (0 — CPU, 1 — GPU)
EASYOCR_GPU=0

Запуск

uvicorn app.main:app --reload

Откройте в браузере http://127.0.0.1:8000.


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

  1. На главной странице выберите PDF.

  2. Опционально выберите модель (локальная / серверная).

  3. Нажмите Отправить.

  4. Дождитесь обработки и перейдите на страницу результата.

  5. Скачайте файлы:

    • result.txt – чистый текст
    • result.json – массив объектов { bbox, text, confidence }

Структура проекта

app/             # исходный код FastAPI
templates/       # Jinja2‑шаблоны (index.html, result.html, base.html)
static/          # CSS и JS
results/         # папка с результатами OCR
venv/            # виртуальное окружение (игнорируется)
requirements.txt # зафиксированные зависимости
Dockerfile       # конфигурация контейнера
README.md        # эта инструкция

Тестирование

pytest -q

Лицензия

MIT © Dmitriy Kuznetsov

Contributors

baranovlad

44 commits

nezdraviy

15 commits

arinauru

8 commits

DenisDrum

3 commits

nezdraviy/practice

EasyOCR + FastAPI Autonomous OCR Service

1

stars

71

commits

Python

primary language

May 19, 2025

updated

README

OCR‑PDF

Описание

Небольшой локальный сервис на FastAPI, который позволяет:

  • Загружать PDF-документы
  • Преобразовывать страницы в изображения
  • Распознавать текст с помощью EasyOCR / PyMuPDF
  • Выгружать результат в формате TXT и JSON

Проект готов к развёртыванию на Windows, Linux и macOS без дополнительных зависимостей помимо Python.


Требования

  • Python 3.9+
  • Git

Все зависимости указаны в requirements.txt.


Установка

# Клонировать репозиторий
git clone https://github.com/<username>/practice-main.git
cd practice-main

# Создать виртуальное окружение
python -m venv venv

# Активировать окружение
# Windows:
venv\Scripts\activate.bat
# Linux/macOS:
source venv/bin/activate

# Установить зависимости
pip install --upgrade pip
pip install -r requirements.txt

Конфигурация

Файл .env поддерживает две переменные:

# использовать GPU для EasyOCR (0 — CPU, 1 — GPU)
EASYOCR_GPU=0

Запуск

uvicorn app.main:app --reload

Откройте в браузере http://127.0.0.1:8000.


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

  1. На главной странице выберите PDF.

  2. Опционально выберите модель (локальная / серверная).

  3. Нажмите Отправить.

  4. Дождитесь обработки и перейдите на страницу результата.

  5. Скачайте файлы:

    • result.txt – чистый текст
    • result.json – массив объектов { bbox, text, confidence }

Структура проекта

app/             # исходный код FastAPI
templates/       # Jinja2‑шаблоны (index.html, result.html, base.html)
static/          # CSS и JS
results/         # папка с результатами OCR
venv/            # виртуальное окружение (игнорируется)
requirements.txt # зафиксированные зависимости
Dockerfile       # конфигурация контейнера
README.md        # эта инструкция

Тестирование

pytest -q

Лицензия

MIT © Dmitriy Kuznetsov

Contributors

baranovlad

44 commits

nezdraviy

15 commits

arinauru

8 commits

DenisDrum

3 commits

Languages

Python

52.1%

JavaScript

25.9%

CSS

11.6%

HTML

7.3%

Dockerfile

3.1%