If installing using pip install -user, you must add the user-level bin directory to your PATH environment variable in order to launch jupyter lab. Getting started with the classic Jupyter Notebook conda. We recommend installing the classic Jupyter Notebook using the conda package manager.
Latest version Released:
Converts a scanned PDF into an OCR'ed pdf using Tesseract-OCR and Ghostscript
Project description
- For this reason, it is safer to use python -m pip install, which explicitly specifies the desired Python version (explicit is better than implicit, after all). This is one reason that pip install no longer appears in Python's docs, and experienced Python educators like David Beazley never teach bare pip.
- This also works without administrative rights, but you need to install virtualenv once first (e.g. Using python -m pip install -users virtualenv). To create a virtual environment for Python 3.6 and install the package in it: py -3.6 -m virtualenv -python=3.6 myvirtualenvironent myvirtualenvironent Scripts activate python -m pip install pyPDF2.
- Sep 04, 2020 Installing Python Modules¶ Email. Distutils-sig @ python. As a popular open source development project, Python has an active supporting community of contributors and users that also make their software available for other Python developers to use under open source license terms.
- Sep 02, 2020 4.1. Getting and Installing MacPython¶. Mac OS X 10.8 comes with Python 2.7 pre-installed by Apple. If you wish, you are invited to install the most recent version of Python 3 from the Python website (current “universal binary” build of Python, which runs natively on the Mac’s new Intel and legacy PPC CPU’s, is available there.
PyPDFOCR - Tesseract-OCR based PDF filing
This program will help manage your scanned PDFs by doing the following:
- Take a scanned PDF file and run OCR on it (using the Tesseract OCRsoftware from Google), generating a searchable PDF
- Optionally, watch a folder for incoming scanned PDFs andautomatically run OCR on them
- Optionally, file the scanned PDFs into directories based on simplekeyword matching that you specify
- Evernote auto-upload and filing based on keyword search
- Email status when it files your PDF
More links: Shortcut for inserting a footnote in word on mac.
Usage:
Single conversion:
If you have a language pack installed, then you can specify it with the-l option:
Automatic filing:
To automatically move the OCR’ed pdf to a directory based on a keyword,use the -f option and specify a configuration file (described below):
You can also do this in folder monitoring mode:
Filing based on filename match:
If no keywords match the contents of the filename, you can optionallyallow it to fallback to trying to find keyword matches with the PDFfilename using the -n option. For example, you may have receipts alwaysnamed as receipt_2013_12_2.pdf by your scanner, and you want to movethis to a folder called ‘receipts’. Assuming you have a keywordreceipt matching to folder receipts in your configuration fileas described below, you can run the following and have this filed evenif the content of the pdf does not contain the text ‘receipt’:
Configuration file for automatic PDF filing
The config.yaml file above is a simple folder to keyword matching textfile. It determines where your OCR’ed PDFs (and optionally, the originalscanned PDF) are placed after processing. An example is given below:
The target_folder is the root of your filing cabinet. Any PDF movingwill happen in sub-directories under this directory.
The folders section defines your filing directories and the keywordsassociated with them. In this example, we have three filing directories(finances, travl, receipts), and some associated keywords for eachfiling directory. For example, if your OCR’ed PDF contains the phrase“american express” (in any upper/lower case), it will be filed intodocs/filed/finances
The default_folder is where the OCR’ed PDF is moved to if there isno keyword match.
The original_move_folder is optional (you can comment it out with# in front of that line), but if specified, the original scanned PDFis moved into this directory after OCR is done. Otherwise, if this fieldis not present or commented out, your original PDF will stay where itwas found.
If there is any naming conflict during filing, the program will add anunderscore followed by a number to each filename, in order to avoidoverwriting files that may already be present.
Evernote upload:
Evernote authentication token
To enable Evernote support, you will need to get a developer token foryour Evernoteaccount. Youshould note that this script will never delete or modify existing notesin your account, and limits itself to creating new Notebooks and Notes.Once you get that token, you copy and paste it into your configurationfile as shown below
Evernote filing usage
To automatically upload the OCR’ed pdf to a folder based on a keyword,use the -e option instead of the -f auto filing option.
Similarly, you can also do this in folder monitoring mode:
Evernote filing configuration file
Design of reinforced concrete structures by krishna raju pdf download. The config file shown above only needs to change slightly. The folderssection is completely unchanged, but note that target_folder is thename of your “Notebook stack” in Evernote, and the default_foldershould just be the default Evernote upload notebook name.
Auto email
You can have PyPDFOCR email you everytime it converts a file and filesit. You need to first specify the following lines in the configurationfile and then use the -m option when invoking pypdfocr:
Advanced options
Fine-tuning Tesseract/Ghostscript/others
You can specify Tesseract and Ghostscript executable locations manually, aswell as the number of concurrent processes allowed during preprocessing andtesseract. Use the following in your configuration file:
Handling disk time-outs
If you need to increase the time interval (default 3 seconds) between newdocument scans when pypdfocr is watching a directory, you can specify the followingoption in the configuration file:
Installation
Using pip
PyPDFOCR is available in PyPI, so you can just run:
Please note that some of the 3rd-party libraries required by PyPDFOCR wiillrequire some build tools, especially on a default Ubuntu system. If you runinto any issues using pip install, you may want to install thefollowing packages on Ubuntu and try again:
- gcc
- libjpeg-dev
- zlib-bin
- zlib1g-dev
- python-dev
For those on Windows, because it’s such a pain to get all the PILand PDF dependencies installed, I’ve gone ahead and made an executablecalledpypdfocr.exe
You still need to install Tesseract, GhostScript, etc. as detailed below inthe external dependencies list.
Manual install
Clone the source directly from github (you need to have git installed):
Then, install the following third-party python libraries:
- Pillow (Python Imaging Library) https://pillow.readthedocs.org/en/3.1.x/
- ReportLab (PDF generation library)http://www.reportlab.com/opensource/
- Watchdog (Cross-platform fhlesystem events monitoring)https://pypi.python.org/pypi/watchdog
- PyPDF2 (Pure python pdf library)
These can all be installed via pip:
You will also need to install the external dependencies listed below.
External Dependencies
PyPDFOCR relies on the following (free) programs being installed and inthe path:
- Tesseract OCR software https://code.google.com/p/tesseract-ocr/
- GhostScript http://www.ghostscript.com/
- ImageMagick http://www.imagemagick.org/
- Poppler http://poppler.freedesktop.org/ (Windows)
Poppler is only required if you want pypdfocr to figure out the original PDF resolutionautomatically; just make sure you have pdfimages in your path. Note that thexpdf provided pdfimages does not work for this,because it does not support the -list option to list the table of images in a PDF file.
On Mac OS X, you can install these using homebrew:
On Windows, please use the installers provided on their download pages.
** Important ** Tesseract version 3.02.02 or newer required(apparently 3.02.01-6 and possibly others do not work due to a hocroutput format change that I’m not planning to address). On Ubuntu, youmay need to compile and install it manually by following theseinstructions
How To Install Pypdf2 On Mac
Also note that if you want Tesseract to recognize rotated documents (upside down, or rotated 90 degrees)then you need to find your tessdata directory and do the following:
osd stands for Orientation and Script Detection, so you need to copy the .traineddatafor whatever language you want to scan in as osd.traineddata. If you don’t do this step,then any landscape document will produce garbage
Disclaimer
While test coverage is at 84% right now, Sphinx docs generation is at anearly stage. The software is distributed on an “AS IS” BASIS, WITHOUTWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Version | Date | Changes |
v0.9.1 | 10/11/16 | Fixes (#43, #41) |
v0.9.0 | 2/29/16 | Fixed rotated page text, Mac OS X invisible fonts, and pdf merge slowdown |
v0.8.5 | 2/21/16 | Better ctrl-c and cleanup behavior |
v0.8.4 | 2/18/16 | Maintenance release |
v0.8.3 | 2/18/16 | Bug fix for multiprocessing on windows, ctrl-c interrupt, and integer keywords |
v0.8.2 | 12/8/14 | Fixed imagemagick invocation on windows. Parallelized preprocessing and tesseract execution |
v0.8.1 | 12/5/14 | Added –skip-preprocess option, scan_interval option, and fixed too many open files bug during page overlay |
v0.8.0 | 10/27/14 | Added preprocessing to clean up prior to tesseract, bug fixes on file names with spaces/dots |
v0.7.6 | 9/10/14 | Fixed issue 17 rotation bug |
v0.7.5 | 8/18/14 | Update for Tesseract 3.03 .hocr filename change |
v0.7.4 | 3/28/14 | Bug fix on pdf assembly |
v0.7.3 | 3/27/14 | Modified internals to use single image per page (instead of multipage tiff). Also enabled orientation detection |
v0.7.2 | 3/26/14 | Switched from Pil to Pillow. Now uses original images from PDF in output pdf (no dpi/color/quality changes!) |
v0.7.1 | 3/25/14 | OCR Language is now an option |
v0.7.0 | 3/25/14 | Now honors original pdf resolution |
v0.6.1 | 2/16/14 | Bug fix for pdfs with only numbers in the filename |
v0.6.0 | 1/16/14 | Added filing based on filename match as fallback, added tesseract version check |
v0.5.4 | 1/12/14 | Fixed bug with reordering of text pages on certain platforms(glob) |
v0.5.3 | 12/12/13 | Fix to evernote server specification |
v0.5.2 | 12/08/13 | Fix to lowercase keywords |
v0.5.1 | 11/02/13 | Fixed a bunch of windows critical path handling issues |
v0.5.0 | 10/30/13 | Email status added, 90% test coverage |
v0.4.1 | 10/28/13 | Made HOCR parsing more robust |
v0.4.0 | 10/28/13 | Added early Evernote upload support |
v0.3.1 | 10/24/13 | Path fix on windows |
v0.3.0 | 10/23/13 | Added filing of converted pdfs using a configuration file to specify target directories based on keyword matches in the pdf text |
v0.2.2 | 10/22/13 | Added a console script to put the pypdfocr script into your bin |
v0.2.1 | 10/22/13 | Fix to initial packaging problem. |
v0.2.0 | 10/21/13 | Initial release. |
Todo list
- #43 version check for tesseract
- On windows, search for pdfimages and imagemagick instead of relying on path
- Split up into flow steps
- Run more robustness tests for watching networked shares
- Add more docstrings
- Add more option specifiers to tesseract and ghostscript
Release historyRelease notifications | RSS feed
0.9.1
0.9.0
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.6
Texpad for mac. 0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.1
0.6.0
0.5.4
0.5.3
0.5.2
0.5.1
0.5
0.4.1
0.4
0.3.1
0.3
0.2.2
0.2.1
0.2
Install Pypdf2 Mac
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size pypdfocr-0.9.1.tar.gz (43.2 kB) | File type Source | Python version None | Upload date | Hashes |
Hashes for pypdfocr-0.9.1.tar.gz
Algorithm | Hash digest |
---|---|
SHA256 | 8d261d0afad0e12d4228689a4286952fc660c8c60c75c398b38158075fb9f782 |
MD5 | 23d7deb772e6fa9aa89fef257efd68a0 |
BLAKE2-256 | c3231bf42cb12af63d498fcd425882815c21efef37800514dbad9fa28918df5e |