https://github.com/erikkastelec/pdfscraper
CLI program for searching inside text and tables in PDF documents and displaying results in HTML.
https://github.com/erikkastelec/pdfscraper
camelot ocr ocr-analysis pdf-documents pdfminer
Last synced: 12 months ago
JSON representation
CLI program for searching inside text and tables in PDF documents and displaying results in HTML.
- Host: GitHub
- URL: https://github.com/erikkastelec/pdfscraper
- Owner: erikkastelec
- License: mit
- Created: 2020-04-10T07:59:11.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-02-07T18:49:55.000Z (over 2 years ago)
- Last Synced: 2025-04-02T06:51:27.546Z (about 1 year ago)
- Topics: camelot, ocr, ocr-analysis, pdf-documents, pdfminer
- Language: Python
- Homepage:
- Size: 123 KB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PDFScraper
[](https://badge.fury.io/py/PDFScraper)
CLI program and library for extraction of PDF elements, which implements a search functionality that outputs summary in an HTML format. It combines [Pdfminer.six](https://github.com/pdfminer/pdfminer.six), [Camelot](https://github.com/camelot-dev/camelot) and [Tesseract OCR](https://github.com/tesseract-ocr/tesseract) in a single program, which is simple to use.
# How to use
### Install using pip
Use pip to install PDFScraper:
$ pip install PDFScraper
### Arguments
optional arguments:
-h, --help show this help message and exit
--path PATH path to pdf folder or file
--out OUT path to output file location
--log_level {critical,error,warning,info,debug}
logger level to use (default: info)
--search SEARCH word to search for
--tessdata TESSDATA location of tesseract data files
--tables TABLES should tables be extracted and searched
--search_mode SEARCH_MODE
And or Or search, when multiple search words are
provided
--multiprocessing MULTIPROCESSING
should multiprocessing be enabled
`path`, by default ".", specifies the location of the PDF folder or directory.
`out`, by default ".", specifies output directory in which `summary.html` file is created.
`search` argument is used for specifying the word or sentence that will be searched for in the PDF documents.
`tessdata` argument can be used to specify custom tessdata location for OCR analysis.
`tables`, by default True, specifies whether to search for search word in tables. Disabling tables search improves speed significantly.
`search_mode`, by default in 'and' mode, specifies whether all the search terms need to be contained inside paragraph. In 'or' mode, the paragraph is returned if any of the terms are contained. In 'and' mode, the paragraph is returned if all the terms are contained.
`multiprocessing`, by default True, runs process in multiple threads to speed up processing. **Should not be used with OCR as it significantly decreases performance**
### OCR
**tessdata pretrained language [files](https://github.com/tesseract-ocr/tessdata_best) need to be manually added to the tessdata directory.**
OCR analysis of PDF documents currently supports English and Slovenian language.
Language of the document is automatically detected using [langdetect library](https://github.com/Mimino666/langdetect).