Visual web application for Python OCR invoice/receipt data scraping

Job ID: 33998242

Budget: $30 – $250 USD

Hello
I have a complex project done partially and want to know if you can complete it for me or it is out of your scope of work.

What is the objective?
I would like to use OCR python library and extract invoice or receipt data from a PDF or png or jpeg files
There must be a visual interface for user to be able to assign the extracted data to the related input fields, then export data to JSON file upon completion.

Please test the code from here: 65.108.211.133

Frontend:
What is programming language currently used in existing incomplete project?
- Language: Angular CLI
- Library used: https://github.com/shiika/data-modifier

Backend:
- Language: Python
- Library used: https://github.com/tesseract-ocr/tesseract


Here is a complete task description needs to be done:

A user must be able to upload invoices [pdf, jpeg or png files] and use the library to extract the invoice data in the following languages [English, Finnish, Swedish, Chinese]
All extracted data later need to be exported to a JSON file.

Here is the visual flow of the interface:
User will upload an image,
OCR library will be used in Python to scrape the text from the image
Only the required extracted data will be each assigned to a specific key with a visual interface
-- for example invoice number will be assigned to an input on the left side of the visual editor
if invoice number has been assigned by mistake then the user can manually assign it to the correct input [key] by clicking on the input and then selecting an area on the image
after assigning all the data user can export data to a JSON file

this template / vendor will be saved into a MYSQL database for future usage
-- example would be so that when user uploads another invoice or receipt from the same vendor,
-- then corresponding template will be automatically loaded and the position of the JSON keys on the page will be automatically recognized.

There needs to be also tables [grids] for invoice or receipt product lines
those grids are once assigned by users and then grid positions will be stored into database

After modifying the invoice/ receipt the vendor must be saved into MYSQL database with correct positioning of the tables + Grids and all data and keys for different languages
For example for that vendor invoice number is written Factura etc...

Uploading an invoice or receipt with existing Vendors
The next time user tries to upload an invoice or receipt the vendor must be recognized automatically or user must be able to reselect the vendor so that positioning and grids can be loaded from the MYSQL database for that Vendor and all inputs can be filled automatically and related to corresponding area of that invoice/receipt, if there is a mistake user must be able to fix it by re-assigning the values to the correct inputs from the visual editor by selecting the corresponding area.

We need to have 2 sets of tables one for product lines and one for vat lines

required JSON file keys required for the export are attached to this job as a text file.
Videos of the web app interface are attached.

OCR library used for data extraction: https://github.com/tesseract-ocr/tesseract


Please feel free to me know if you have any questions
Related categories: Python Web Scraping MySQL AngularJS Angular