Skip to main content

OCR-powered screen-capture tool to capture information instead of images.

Project description

NormCap

OCR powered screen-capture tool to capture information instead of images.

Build passing License: GPLv3 Code style: black Coverage Status

Links: Repo | PyPi | Releases | Changelog | FAQs

Content: Quickstart | Python package | Contribute | Credits | Similar tools

Screencast

Features

  • On-screen recognition of selected text
  • Multi platform support for Linux, Windows, MacOS
  • Multi monitor support, incl. HDPI displays
  • Parsing the text based on heuristics (optional, on by default)
  • Show notifications (optional)
  • Stay in system tray (optional)
  • Check for updates (optional, off by default)

Quickstart

❱❱ Download pre-build package for Linux, MacOS or Windows ❰❰

If you experience issues please look at the FAQs or open an issue.

(On MacOS, allow the unsigned application on first start: "System Preferences" → "Security & Privacy" → "General" → "Open anyway". You might also need to allow NormCap to take screenshots.)

For more info, take a look at the NormCap landing page

Python package

As an alternative to a pre-build package you can install the NormCap Python package:

On Linux

# Install dependencies (Ubuntu/Debian)
sudo apt install tesseract-ocr tesseract-ocr-eng

## Install dependencies (Arch)
sudo pacman -S tesseract tesseract-data-eng

## Install dependencies (Fedora)
sudo dnf install tesseract

# Install normcap
pip install normcap

# Run
./normcap

On MacOS

# Install dependencies
brew install tesseract tesseract-lang

# Install normcap
pip install normcap

# Run
./normcap

On Windows

1. Install Tesseract 5 by using the installer provided by UB Mannheim.

2. Adjust environment variables:

  • Create a environment variable TESSDATA_PREFIX and set it to Tesseract's data folder, e.g.:

    setx TESSDATA_PREFIX "C:\Program Files\Tesseract-OCR\tessdata"
    
  • Append Tesseract's location to the environment variable Path, e.g.:

    setx Path "%Path%;C:\Program Files\Tesseract-OCR"
    
  • Make sure to close and reopen your current terminal window to apply the new variables. Test it by running:

    tesseract --list-langs
    

3. Install and run NormCap:

# Install normcap
pip install normcap

# Run
normcap

Why "NormCap"?

See XKCD:

Comic

Contribute

Setup Environment

Prerequisites are Python >=3.9, Poetry, Tesseract (incl. language data).

# Clone repository
git clone https://github.com/dynobo/normcap.git

# Change into project directory
cd normcap

# Create virtual env and install dependencies
poetry install

# Register pre-commit hook
poetry run pre-commit install

# Run NormCap in virtual env
poetry run python -m normcap

Credits

This project uses the following non-standard libraries:

Packaging is done with:

  • briefcase - converting Python projects into standalone apps

And it depends on external software

Thanks to the maintainers of those nice libraries!

Similar open source tools

Certification

WOMM

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

normcap-0.3.2.tar.gz (393.0 kB view hashes)

Uploaded Source

Built Distribution

normcap-0.3.2-py3-none-any.whl (407.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page